Systems and methods for transferring settings across devices based on user gestures

ABSTRACT

Systems and methods for transferring settings between user devices using gestures are provided. A selection of media guidance application setting is made. A user input indicative of a direction in which the user wishes to transmit the selected media guidance application setting is received. A determination is made that a device is present in the direction indicated by the user and the device is identified. In response to identifying the device indicated by the user, the selected media guidance application setting is transferred to the identified device. The transferred setting is applied to the device to which the setting was transferred.

BACKGROUND

Mobile devices have proliferated society. More particularly, the mannerin which users interact with their mobile devices has fundamentallychanged with the advent of multi-touch technology which allows users tointeract with their devices using gestures. For example, users mayinteract with their smart-phones and tablet computers using a variety ofgestures such as swiping their fingers across the screen, performing apinching or spreading out action with their fingers on the screen, ortapping items shown on the screen. However, the manner in which userstransfer media items across multiple devices has largely remainedunchanged from conventional methods of selecting a media item and thenselecting a destination device using a menu.

SUMMARY OF THE INVENTION

In view of the foregoing, systems and methods for transferring settingsacross devices based on user gestures are provided. In particular, auser may select a setting to transfer to another device and may performa gesture indicative of the direction in which the device he or shewishes to transfer the setting to is located. The setting may then betransferred to the indicated device.

In some embodiments, the user may perform the gesture using one or morefingers, a hand, or by physically manipulating the device itself. Theuser's device may recognize a variety of gestures. The user's device maydetect and register the direction indicated by the user's gesture andidentify the device(s) located in the gestured direction. The device mayprompt the user to confirm the identified device(s). Upon confirmationof the identified device by the user, the device may transfer theselected setting to the identified device(s).

In some embodiments, the user's device may be in direct communicationwith other devices neighboring it. For example, devices couldcommunicate directly using Bluetooth, infra-red, or any other suitablewireless link. Accordingly, the user's device may transfer the settingto the identified device(s) directly using the direct communicationslinks discussed above.

In some embodiments, the user's device may not be in directcommunication with other devices neighboring it. For example, devicesmay communicate with each other through an intermediate server whichacts as an intermediary facilitating inter-device communication. Such anintermediate server could be based on the Internet, in a cloud, or on alocal network. Accordingly, the user's device may transfer the settingto the identified device(s) directly using the indirect communicationslinks discussed above.

In some embodiments, the user's device may be continuously aware of thelocations of other devices in its neighborhood. For example, the user'sdevice may periodically (or continuously) poll other devices for theirlocations. Alternatively, the user's device may periodically(continuously) query a central server for the locations of other devicesin its neighborhood or the user's device may only attempt to determinethe location of another device in response to receiving a user gestureindicative of a direction in which to transfer a setting.

In some embodiments, the user's device may automatically detect anotherdevice when it is in close proximity to the user's device. Based on thedetermination that another device is in close proximity to it, theuser's device may prompt the user to ask whether the user wishes totransfer any settings to the device in proximity.

In some embodiments, the user may be able to select multiple devices totransfer one or more settings to. For example, the user's device maydetermine that multiple devices are present in the direction in whichthe user gestures. The user may be presented with an option to transferthe selected setting(s) to one or more of the identified devices basedon this determination. Alternatively, the user may make separategestures in multiple directions and the user's device may identifycorresponding devices in each of the directions in which the usergestures. The user may then be able to transfer the selected setting(s)to one or more of the identified devices.

In some embodiments, the user may wish to retract a setting from adevice to which the user previously transferred a setting to. The usermay select an option to retract a setting on his or her device and thenperform a gesture indicative of the direction in which the device toretract the setting from is located. The user may perform multiplegestures where each gesture may be indicative of one or more otherdevices. The user's device may identify the indicated device(s) and makea determination of whether the device(s) has any setting(s) that theuser may retract. The user's device may generate a screen displaying alist of the settings that the user has previously transferred to variousother devices. The user may be able to select one or more settings fromthe displayed screen to retract. The user's device may then proceed toretract the selected setting(s).

In some embodiments, the user may associate restrictions to the settingtransferred to another device. For example, the user may stipulate thatthe setting be active on the device to which it is transferred for atmost a pre-determined period of time. The user's device may display anoption for the user to configure such restrictions before the setting istransferred to another device. The device may generate and display anoption enabling the user to adjust the restrictions associated with asetting after the setting has been transferred to another device.

In some embodiments, a user may receive a setting from another user andmay be able to further transfer the setting to a third user. The user'sdevice may make a determination as to whether any restrictionspreventing further transfer of the setting are associated with thesetting. In response to determining that there are no such restrictions,the user's device may transfer the setting to the device(s) indicated bythe user.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other objects and advantages of the invention will beapparent upon consideration of the following detailed description, takenin conjunction with the accompanying drawings, in which like referencecharacters refer to like parts throughout, and in which:

FIGS. 1 and 2 show illustrative display screens that may be used toprovide media guidance application listings in accordance with anembodiment of the invention;

FIG. 3 shows an illustrative user equipment device in accordance withanother embodiment of the invention;

FIG. 4 is a diagram of an illustrative cross-platform interactive mediasystem in accordance with another embodiment of the invention;

FIG. 5 shows an illustrative display screen that may be used to indicatecategories of settings available for a user to transfer to anotherdevice in accordance with an embodiment of the invention;

FIG. 6 shows an illustrative display screen that may be used to indicatesettings within a particular category of settings available for a userto transfer to another device in accordance with an embodiment of theinvention;

FIG. 7 illustrates an example of a message that may be transferred fromthe user's device to another device in accordance with an embodiment ofthe invention;

FIGS. 8( a) and 8(b) show two illustrative methods for transferring asetting from a first device to a second device indicated by a usergesture in accordance with an embodiment of the invention;

FIG. 9 shows an illustrative display screen that may be displayed to theuser to confirm that the user wishes to transfer the selected setting toan identified device in accordance with an embodiment of the invention;

FIG. 10 shows an illustrative display screen that may notify the user atthe target device of an incoming setting transfer and prompt the user toaccept the transfer in accordance with an embodiment of the invention;

FIGS. 11( a) and 11(b) show an illustrative method for retracting asetting that was previously transferred to a target device in accordancewith an embodiment of the invention;

FIG. 12 shows an illustrative display screen that may list all settingsthat the user has transferred to other devices in accordance with anembodiment of the invention;

FIGS. 13, 14, and 15 show illustrative flow diagrams for transferring asetting to another device based on user gestures in accordance with anembodiment of the invention;

FIG. 16 shows an illustrative flow diagram for identifying a targetdevice from a plurality of devices in accordance with an embodiment ofthe invention; and

FIG. 17 shows an illustrative method for identifying a target devicefrom a plurality of devices in accordance with an embodiment of theinvention.

DETAILED DESCRIPTION

The amount of content available to users in any given content deliverysystem can be substantial. Consequently, many users desire a form ofmedia guidance through an interface that allows users to efficientlynavigate content selections and easily identify content that they maydesire. An application that provides such guidance is referred to hereinas an interactive media guidance application or, sometimes, a mediaguidance application or a guidance application.

Interactive media guidance applications may take various forms dependingon the content for which they provide guidance. One typical type ofmedia guidance application is an interactive television program guide.Interactive television program guides (sometimes referred to aselectronic program guides) are well-known guidance applications that,among other things, allow users to navigate among and locate many typesof content. As referred to herein, the term “content” should beunderstood to mean an electronically consumable user asset, such astelevision programming, as well as pay-per-view programs, on-demandprograms (as in video-on-demand (VOD) systems), Internet content (e.g.,streaming content, downloadable content, Webcasts, etc.), video clips,audio, content information, pictures, rotating images, documents,playlists, websites, articles, books, electronic books, blogs,advertisements, chat sessions, social media, applications, games, and/orany other media or multimedia and/or combination of the same. Guidanceapplications also allow users to navigate among and locate content. Asreferred to herein, the term “multimedia” should be understood to meancontent that utilizes at least two different content forms describedabove, for example, text, audio, images, video, or interactivity contentforms. Content may be recorded, played, displayed or accessed by userequipment devices, but can also be part of a live performance.

With the advent of the Internet, mobile computing, and high-speedwireless networks, users are accessing media on user equipment deviceson which they traditionally did not. As referred to herein, the phrase“user equipment device,” “user equipment,” “user device,” “electronicdevice,” “electronic equipment,” “media equipment device,” or “mediadevice” should be understood to mean any device for accessing thecontent described above, such as a television, a Smart TV, a set-topbox, an integrated receiver decoder (IRD) for handling satellitetelevision, a digital storage device, a digital media receiver (DMR), adigital media adapter (DMA), a streaming media device, a DVD player, aDVD recorder, a connected DVD, a local media server, a BLU-RAY player, aBLU-RAY recorder, a personal computer (PC), a laptop computer, a tabletcomputer, a WebTV box, a personal computer television (PC/TV), a PCmedia server, a PC media center, a hand-held computer, a stationarytelephone, a personal digital assistant (PDA), a mobile telephone, aportable video player, a portable music player, a portable gamingmachine, a smart phone, or any other television equipment, computingequipment, or wireless device, and/or combination of the same. In someembodiments, the user equipment device may have a front facing screenand a rear facing screen, multiple front screens, or multiple angledscreens. In some embodiments, the user equipment device may have a frontfacing camera and/or a rear facing camera. On these user equipmentdevices, users may be able to navigate among and locate the same contentavailable through a television. Consequently, media guidance may beavailable on these devices, as well. The guidance provided may be forcontent available only through a television, for content available onlythrough one or more of other types of user equipment devices, or forcontent available both through a television and one or more of the othertypes of user equipment devices. The media guidance applications may beprovided as on-line applications (i.e., provided on a web-site), or asstand-alone applications or clients on user equipment devices. Variousdevices and platforms that may implement media guidance applications aredescribed in more detail below.

One of the functions of the media guidance application is to providemedia guidance data to users. As referred to herein, the phrase “mediaguidance data” or “guidance data” should be understood to mean any datarelated to content, such as media listings, media-related information((e.g., broadcast times, broadcast channels, titles, descriptions,ratings information (e.g., parental control ratings, critic's ratings,etc.), genre or category information, actor information, logo data forbroadcasters' or providers' logos, etc.), media format (e.g., standarddefinition, high definition, 3D, etc.), advertisement information (e.g.,text, images, media clips, etc.)), on-demand information, blogs,websites, and any other type of guidance data that is helpful for a userto navigate among and locate desired content selections.

FIGS. 1, 2, 5, 6, 9, 10, 11(b), and 12 show illustrative display screensthat may be used to provide media guidance data. The display screensshown in FIGS. 1, 2, 5, 6, 9, 10, 11(b), and 12 may be implemented onany suitable user equipment device or platform. While the displays ofFIGS. 1, 2, 5, 6, 9, 10, 11(b), and 12 are illustrated as full screendisplays, they may also be fully or partially overlaid over contentbeing displayed. A user may indicate a desire to access contentinformation by selecting a selectable option provided in a displayscreen (e.g., a menu option, a listings option, an icon, a hyperlink,etc.) or pressing a dedicated button (e.g., a GUIDE button) on a remotecontrol or other user input interface or device. In response to theuser's indication, the media guidance application may provide a displayscreen with media guidance data organized in one of several ways, suchas by time and channel in a grid, by time, by channel, by source, bycontent type, by category (e.g., movies, sports, news, children, orother categories of programming), or other predefined, user-defined, orother organization criteria. The organization of the media guidance datais determined by guidance application data. As referred to herein, thephrase, “guidance application data” should be understood to mean dataused in operating the guidance application, such as program information,guidance application settings, user preferences, or user profileinformation.

FIG. 1 shows illustrative grid program listings display 100 arranged bytime and channel that also enables access to different types of contentin a single display. Display 100 may include grid 102 with: (1) a columnof channel/content type identifiers 104, where each channel/content typeidentifier (which is a cell in the column) identifies a differentchannel or content type available; and (2) a row of time identifiers106, where each time identifier (which is a cell in the row) identifiesa time block of programming. Grid 102 also includes cells of programlistings, such as program listing 108, where each listing provides thetitle of the program provided on the listing's associated channel andtime. With a user input device, a user can select program listings bymoving highlight region 110. Information relating to the program listingselected by highlight region 110 may be provided in program informationregion 112. Region 112 may include, for example, the program title, theprogram description, the time the program is provided (if applicable),the channel the program is on (if applicable), the program's rating, andother desired information.

In addition to providing access to linear programming (e.g., contentthat is scheduled to be transmitted to a plurality of user equipmentdevices at a predetermined time and is provided according to aschedule), the media guidance application also provides access tonon-linear programming (e.g., content accessible to a user equipmentdevice at any time and is not provided according to a schedule).Non-linear programming may include content from different contentsources including on-demand content (e.g., VOD), Internet content (e.g.,streaming media, downloadable media, etc.), locally stored content(e.g., content stored on any user equipment device described above orother storage device), or other time-independent content. On-demandcontent may include movies or any other content provided by a particularcontent provider (e.g., HBO On Demand providing “The Sopranos” and “CurbYour Enthusiasm”). HBO ON DEMAND is a service mark owned by Time WarnerCompany L. P. et al. and THE SOPRANOS and CURB YOUR ENTHUSIASM aretrademarks owned by the Home Box Office, Inc. Internet content mayinclude web events, such as a chat session or Webcast, or contentavailable on-demand as streaming content or downloadable content throughan Internet web site or other Internet access (e.g. FTP).

Grid 102 may provide media guidance data for non-linear programmingincluding on-demand listing 114, recorded content listing 116, andInternet content listing 118. A display combining media guidance datafor content from different types of content sources is sometimesreferred to as a “mixed-media” display. The various permutations of thetypes of media guidance data that may be displayed that are differentthan display 100 may be based on user selection or guidance applicationdefinition (e.g., a display of only recorded and broadcast listings,only on-demand and broadcast listings, etc.). As illustrated, listings114, 116, and 118 are shown as spanning the entire time block displayedin grid 102 to indicate that selection of these listings may provideaccess to a display dedicated to on-demand listings, recorded listings,or Internet listings, respectively. In some embodiments, listings forthese content types may be included directly in grid 102. Additionalmedia guidance data may be displayed in response to the user selectingone of the navigational icons 120. (Pressing an arrow key on a userinput device may affect the display in a similar manner as selectingnavigational icons 120.)

Display 100 may also include video region 122, advertisement 124, andoptions region 126. Video region 122 may allow the user to view and/orpreview programs that are currently available, will be available, orwere available to the user. The content of video region 122 maycorrespond to, or be independent from, one of the listings displayed ingrid 102. Grid displays including a video region are sometimes referredto as picture-in-guide (PIG) displays. PIG displays and theirfunctionalities are described in greater detail in Satterfield et al.U.S. Pat. No. 6,564,378, issued May 13, 2003 and Yuen et al. U.S. Pat.No. 6,239,794, issued May 29, 2001, which are hereby incorporated byreference herein in their entireties. PIG displays may be included inother media guidance application display screens of the embodimentsdescribed herein.

Advertisement 124 may provide an advertisement for content that,depending on a viewer's access rights (e.g., for subscriptionprogramming), is currently available for viewing, will be available forviewing in the future, or may never become available for viewing, andmay correspond to or be unrelated to one or more of the content listingsin grid 102. Advertisement 124 may also be for products or servicesrelated or unrelated to the content displayed in grid 102. Advertisement124 may be selectable and provide further information about content,provide information about a product or a service, enable purchasing ofcontent, a product, or a service, provide content relating to theadvertisement, etc. Advertisement 124 may be targeted based on a user'sprofile/preferences, monitored user activity, the type of displayprovided, or on other suitable targeted advertisement bases.

While advertisement 124 is shown as rectangular or banner shaped,advertisements may be provided in any suitable size, shape, and locationin a guidance application display. For example, advertisement 124 may beprovided as a rectangular shape that is horizontally adjacent to grid102. This is sometimes referred to as a panel advertisement. Inaddition, advertisements may be overlaid over content or a guidanceapplication display or embedded within a display. Advertisements mayalso include text, images, rotating images, video clips, or other typesof content described above. Advertisements may be stored in a userequipment device having a guidance application, in a database connectedto the user equipment, in a remote location (including streaming mediaservers), or on other storage means, or a combination of theselocations. Providing advertisements in a media guidance application isdiscussed in greater detail in, for example, Knudson et al., U.S. PatentApplication Publication No. 2003/0110499, filed Jan. 17, 2003; Ward, IIIet al. U.S. Pat. No. 6,756,997, issued Jun. 29, 2004; and Schein et al.U.S. Pat. No. 6,388,714, issued May 14, 2002, which are herebyincorporated by reference herein in their entireties. It will beappreciated that advertisements may be included in other media guidanceapplication display screens of the embodiments described herein.

Options region 126 may allow the user to access different types ofcontent, media guidance application displays, and/or media guidanceapplication features. Options region 126 may be part of display 100 (andother display screens described herein), or may be invoked by a user byselecting an on-screen option or pressing a dedicated or assignablebutton on a user input device. The selectable options within optionsregion 126 may concern features related to program listings in grid 102or may include options available from a main menu display. Featuresrelated to program listings may include searching for other air times orways of receiving a program, recording a program, enabling seriesrecording of a program, setting program and/or channel as a favorite,purchasing a program, or other features. Options available from a mainmenu display may include search options, VOD options, parental controloptions, Internet options, cloud-based options, device synchronizationoptions, second screen device options, options to access various typesof media guidance data displays, options to subscribe to a premiumservice, options to edit a user's profile, options to access a browseoverlay, or other options.

The media guidance application may be personalized based on a user'spreferences. A personalized media guidance application allows a user tocustomize displays and features to create a personalized “experience”with the media guidance application. This personalized experience may becreated by allowing a user to input these customizations and/or by themedia guidance application monitoring user activity to determine varioususer preferences. Users may access their personalized guidanceapplication by logging in or otherwise identifying themselves to theguidance application. Customization of the media guidance applicationmay be made in accordance with a user profile. The customizations mayinclude varying presentation schemes (e.g., color scheme of displays,font size of text, etc.), aspects of content listings displayed (e.g.,only HDTV or only 3D programming, user-specified broadcast channelsbased on favorite channel selections, re-ordering the display ofchannels, recommended content, etc.), desired recording features (e.g.,recording or series recordings for particular users, recording quality,etc.), parental control settings, customized presentation of Internetcontent (e.g., presentation of social media content, e-mail,electronically delivered articles, etc.) and other desiredcustomizations.

The media guidance application may allow a user to provide user profileinformation or may automatically compile user profile information. Themedia guidance application may, for example, monitor the content theuser accesses and/or other interactions the user may have with theguidance application. Additionally, the media guidance application mayobtain all or part of other user profiles that are related to aparticular user (e.g., from other web sites on the Internet the useraccesses, such as www.allrovi.com, from other media guidanceapplications the user accesses, from other interactive applications theuser accesses, from another user equipment device of the user, etc.),and/or obtain information about the user from other sources that themedia guidance application may access. As a result, a user can beprovided with a unified guidance application experience across theuser's different user equipment devices. This type of user experience isdescribed in greater detail below in connection with FIG. 4. Additionalpersonalized media guidance application features are described ingreater detail in Ellis et al., U.S. Patent Application Publication No.2005/0251827, filed Jul. 11, 2005, Boyer et al., U.S. Pat. No.7,165,098, issued Jan. 16, 2007, and Ellis et al., U.S. PatentApplication Publication No. 2002/0174430, filed Feb. 21, 2002, which arehereby incorporated by reference herein in their entireties.

Another display arrangement for providing media guidance is shown inFIG. 2. Video mosaic display 200 includes selectable options 202 forcontent information organized based on content type, genre, and/or otherorganization criteria. In display 200, television listings option 204 isselected, thus providing listings 206, 208, 210, and 212 as broadcastprogram listings. In display 200 the listings may provide graphicalimages including cover art, still images from the content, video clippreviews, live video from the content, or other types of content thatindicate to a user the content being described by the media guidancedata in the listing. Each of the graphical listings may also beaccompanied by text to provide further information about the contentassociated with the listing. For example, listing 208 may include morethan one portion, including media portion 214 and text portion 216.Media portion 214 and/or text portion 216 may be selectable to viewcontent in full-screen or to view information related to the contentdisplayed in media portion 214 (e.g., to view listings for the channelthat the video is displayed on).

The listings in display 200 are of different sizes (i.e., listing 206 islarger than listings 208, 210, and 212), but if desired, all thelistings may be the same size. Listings may be of different sizes orgraphically accentuated to indicate degrees of interest to the user orto emphasize certain content, as desired by the content provider orbased on user preferences. Various systems and methods for graphicallyaccentuating content listings are discussed in, for example, Yates, U.S.Patent Application Publication No. 2010/0153885, filed Dec. 29, 2005,which is hereby incorporated by reference herein in its entirety.

Users may access content and the media guidance application (and itsdisplay screens described above and below) from one or more of theiruser equipment devices. FIG. 3 shows a generalized embodiment ofillustrative user equipment device 300. More specific implementations ofuser equipment devices are discussed below in connection with FIG. 4.User equipment device 300 may receive content and data via input/output(hereinafter “I/O”) path 302. I/O path 302 may provide content (e.g.,broadcast programming, on-demand programming, Internet content, contentavailable over a local area network (LAN) or wide area network (WAN),and/or other content) and data to control circuitry 304, which includesprocessing circuitry 306 and storage 308. Control circuitry 304 may beused to send and receive commands, requests, and other suitable datausing I/O path 302. I/O path 302 may connect control circuitry 304 (andspecifically processing circuitry 306) to one or more communicationspaths (described below). I/O functions may be provided by one or more ofthese communications paths, but are shown as a single path in FIG. 3 toavoid overcomplicating the drawing.

Control circuitry 304 may be based on any suitable processing circuitrysuch as processing circuitry 306. As referred to herein, processingcircuitry should be understood to mean circuitry based on one or moremicroprocessors, microcontrollers, digital signal processors,programmable logic devices, field-programmable gate arrays (FPGAs),application-specific integrated circuits (ASICs), etc., and may includea multi-core processor (e.g., dual-core, quad-core, hexa-core, or anysuitable number of cores) or supercomputer. In some embodiments,processing circuitry may be distributed across multiple separateprocessors or processing units, for example, multiples of the same typeof processing units (e.g., two Intel Core i7 processors) or multipledifferent processors (e.g., an Intel Core i5 processor and an Intel Corei7 processor). In some embodiments, control circuitry 304 executesinstructions for a media guidance application stored in memory (i.e.,storage 308).

In client-server based embodiments, control circuitry 304 may includecommunications circuitry suitable for communicating with a guidanceapplication server or other networks or servers. The instructions forcarrying out the above mentioned functionality may be stored on theguidance application server. Communications circuitry may include acable modem, an integrated services digital network (ISDN) modem, adigital subscriber line (DSL) modem, a telephone modem, Ethernet card,or a wireless modem for communications with other equipment, or anyother suitable communications circuitry. Such communications may involvethe Internet or any other suitable communications networks or paths(which is described in more detail in connection with FIG. 4). Inaddition, communications circuitry may include circuitry that enablespeer-to-peer communication of user equipment devices, or communicationof user equipment devices in locations remote from each other (describedin more detail below).

Memory may be an electronic storage device provided as storage 308 thatis part of control circuitry 304. As referred to herein, the phrase“electronic storage device” or “storage device” should be understood tomean any device for storing electronic data, computer software, orfirmware, such as random-access memory, read-only memory, hard drives,optical drives, digital video disc (DVD) recorders, compact disc (CD)recorders, BLU-RAY disc (BD) recorders, BLU-RAY 3D disc recorders,digital video recorders (DVR, sometimes called a personal videorecorder, or PVR), solid state devices, quantum storage devices, gamingconsoles, gaming media, or any other suitable fixed or removable storagedevices, and/or any combination of the same. Storage 308 may be used tostore various types of content described herein as well as mediaguidance information, described above, and guidance application data,described above. Nonvolatile memory may also be used (e.g., to launch aboot-up routine and other instructions). Cloud-based storage, describedin relation to FIG. 4, may be used to supplement storage 308 or insteadof storage 308.

License files including information about the identity of the userand/or user equipment device 300 and media content access right andpermission information may be stored on storage 308. The user or userequipment device 300 may be identified by a unique number. Media contentauthorization information may describe access rights to media contentand permission information. Access rights may describe conditions ofaccess to one or more media content. For example, authorization may bein terms of subscription to a grouping of media content that areprovided by a media content service provider for a period of time, andmay depend on the terms of a service agreement between a user and thecopyright owner or distributor. For example, a user may be subscribed toaccess the entire television series of Battlestar Galactica or the usermay be subscribed to a sports broadcast package that grants access to anumber of pay-per-view shows or a number of sports channels.

License files may also include decryption keys for encrypted content.For example, encrypted music, video, or other content may be stored instorage 308 and a corresponding license file may be required to unlockthe content and peruse it. It may not be possible to unlock the contentwithout having possession of the corresponding license file. Licensefiles may also store a user's website-credentials. For example, theuser's authentication information for a website like Hulu or Netflix maybe encrypted and stored in storage 308. Control circuitry 304 may needto access the corresponding license file in order to decrypt thewebsite-credentials stored in storage 308. Accordingly, in order toperuse the content or access the relevant website, on a device otherthan user equipment device 300, it may be necessary in to transfer thelicense file in tandem with the desired content and website-credentials.In some implementations, the license file may be stored on a serverunder the ownership of the copyright owner or distributor. In suchinstances, control circuitry 304 may retrieve the license file from theserver when required.

Control circuitry 304 may include any suitable hardware and/or softwareto perform detection and identification operations. For example, controlcircuitry 304 may include infrared, optical, and/or radio-frequencyreceivers and/or transmitters to detect other user devices. Controlcircuitry 304 may additionally, or alternatively, include one or moremicrophone and/or camera to detect audible and/or visual information,respectively. The microphone may be capable of receiving sounds withinthe audible range and/or outside the audible range. The microphone maybe omni-directional to allow determination of the direction of theaudible signal. The camera may be capable of capturing informationwithin the visual spectrum and/or outside the visual spectrum. Forexample, the camera may be able to capture infrared information,ultraviolet information, or any other suitable type of information andthus detect and/or identify another user device. Control circuitry 304may additionally, or alternatively, include palm, fingerprint, and/orretinal readers for detecting and/or identifying user devices.

In some embodiments, control circuitry 304 may use any suitable methodto determine the distance, trajectory, and/or location of another userdevice in relation to user equipment device 300. For example, controlcircuitry 304 may use received signal strength indication (RSSI) from auser's device to determine the distance the user is from another userdevice. For example, RSSI values may be triangulated to determine thelocation of the user's device. Control circuitry 304 may also use, forexample, triangulation and/or time difference of arrival determinationof appropriate information to determine the location of the user'sdevice. For example, time difference of arrival values of soundsemanating from another user device may be determined. In someembodiments, an echo-location type system may be used to detect otheruser devices. For example, control circuitry 304 may instruct speakers314 to transmit an audio signal that is imperceptible to human ears. Theaudio signal may carry information identifying the device uniquely.Other user devices that receive the audio signal may respond with ananswer signal encoded with information identifying themselves. In someimplementations, speakers 314 may transmit the audio signal on a firstfrequency and other devices and respond with an answer signal on asecond frequency. The first frequency may be different from the secondfrequency. The time difference detected by control circuitry 304 betweensending out the audio signal and receiving an answer signal may be usedto determine the distance of the answering device. In some embodiments,any suitable image processing, video processing, and/or computer visiontechnique may be used to determine a user's distance, trajectory, and/orlocation in relation to another user device. A user's distance,trajectory, and/or location in relation to another user device may bedetermined using any suitable method. For example, control circuitry 304may detect and identify devices corresponding to other users by usingthese techniques while other users are within a measurable distance fromthe user's device.

The measurable distance may be limited by ability of the detectingcircuitry to resolve or measure features. For example, the measurabledistance from which a camera may resolve two spaced points may belimited based on optical resolution of the camera. For example, themeasurable distance from which a wireless antenna may be able to detecta received signal above background noise may depend on the initialintensity of the transmitted signal and an absorption coefficient of thesurround transmission medium.

Control circuitry 304, by using wireless techniques, may also be capableof detecting and/or identifying a user or users based on recognitionand/or identification of a media device (e.g., a mobile device, such asan RFID device or mobile phone) that may be associated with the user orusers. Control circuitry 304 may recognize and identify such a deviceusing any suitable means, for example, radio-frequency identification,Bluetooth, Wi-Fi, WiMax, internet protocol, infrared signals, any othersuitable IEEE, industrial, or proprietary communication standards, orany other suitable electronic, optical, or auditory communication means.For example, control circuitry 304 may determine that a user is within apredetermined detection region of a media device, identify the user, andadd the user to a list of active users at the media device. Thedetection and identification of users as described herein may notrequire any affirmative action on the part of the user beyond, in someembodiments, the configuration of such methods and systems. For example,any detection and identification of users may be done automatically bymedia devices.

In some embodiments, control circuitry 304 may determine a locationbased on global positioning system (GPS) measurements, or in the case ofcellular telephones, measurements based on cell-tower signals. Controlcircuitry 304 may use these measurements to determine locationcoordinates which may be transmitted to other user devices or servers.Control circuitry 304 may include circuitry capable of determining thepresence and/or the location of other user devices in its neighborhood.Any user device within a particular range of the user's device may be aneighboring device. In some implementations, control circuitry 304 maybroadcast a message on a particular channel of a wireless network or anyother suitable radio frequency enquiring whether there are any otherdevices within its range. Other devices within range of the user'sdevice may, in response, send control circuitry 304 a message includinginformation identifying themselves and indicating their geographiccoordinates. In some implementations, devices may periodically broadcasta message or a beacon signal including information identifyingthemselves, their range, and their geographic coordinates. Controlcircuitry 304 may learn of devices that are its neighbors by receivingsuch periodically broadcast messages. In some implementations, controlcircuitry 304 may periodically (or continuously) use its proximitysensors to determine whether any other devices are present within itsrange. In some implementations, each device may periodically orcontinuously send its location information to a central server over theInternet. The central server may subsequently transmit the locationinformation to all the devices present at a venue.

Control circuitry 304 may include video generating circuitry and tuningcircuitry, such as one or more analog tuners, one or more MPEG-2decoders or other digital decoding circuitry, high-definition tuners, orany other suitable tuning or video circuits or combinations of suchcircuits. Encoding circuitry (e.g., for converting over-the-air, analog,or digital signals to MPEG signals for storage) may also be provided.Control circuitry 304 may also include scaler circuitry for upconvertingand downconverting content into the preferred output format of the userequipment 300. Circuitry 304 may also include digital-to-analogconverter circuitry and analog-to-digital converter circuitry forconverting between digital and analog signals. The tuning and encodingcircuitry may be used by the user equipment device to receive and todisplay, to play, or to record content. The tuning and encodingcircuitry may also be used to receive guidance data. The circuitrydescribed herein, including for example, the tuning, video generating,encoding, decoding, encrypting, decrypting, scaler, and analog/digitalcircuitry, may be implemented using software running on one or moregeneral purpose or specialized processors. Multiple tuners may beprovided to handle simultaneous tuning functions (e.g., watch and recordfunctions, picture-in-picture (PIP) functions, multiple-tuner recording,etc.). If storage 308 is provided as a separate device from userequipment 300, the tuning and encoding circuitry (including multipletuners) may be associated with storage 308.

A user may send instructions to control circuitry 304 using user inputinterface 310. User input interface 310 may be any suitable userinterface, such as a remote control, mouse, trackball, keypad, keyboard,touch screen, touchpad, stylus input, joystick, voice recognitioninterface, gesture-sensing user interface, motion-sensing userinterface, or other user input interfaces. User input interface 310 maycommunicate with one or more devices. In some embodiments, user inputinterface 310 may be a remote control with pressure-sensitive buttons.Control circuitry 304 may recognize different amounts of pressureapplied to the pressure-sensitive buttons and adjust navigation through,for example, the guidance application. For example, the amount ofpressure applied may adjust the speed of scrolling through guidanceapplication listings, such that when less pressure is applied, thelistings scroll more slowly and when more pressure is applied, thelistings scroll more quickly. The pressure-sensitive buttons may controlany portion of the guidance application or a media device in anysuitable manner. In some embodiments, user interface 310 may be a touchscreen with a pressure-sensitive surface. Control circuitry 304 mayrecognize different amounts of pressure applied to thepressure-sensitive screen and adjust navigation accordingly. Forexample, the amount of pressure a user applies to a flicking gesture maybe indicative of the distance of the device indicated by the gesture.When more pressure is applied, the user may be indicating another devicewhich is relatively far away from the user's device than when the userapplied less pressure.

In some embodiments, user input interface 310 may be incorporated into amobile device, such as a mobile phone. In such embodiments, user inputinterface 310 may obtain appropriate commands, information, and/orupdates associated with a user or media device, or any other suitableinformation via the cellular phone network. In some embodiments, userinput interface 310 may communicate with an intermediate device that mayconvert any suitable communication means to any other suitablecommunication means. For example, a user may attempt to scroll through aguidance application using the user's mobile phone incorporated withuser input interface 310. User input interface 310 may output wirelesspackets to communicate with user's scroll instructions. An intermediatedevice may receive the wireless packets and in turn transmit infraredpackets to control circuitry 304.

In some embodiments, user input interface 310 may store, transmit,and/or receive information associated with and/or identifying aparticular user device. This information may be used by controlcircuitry 304 to detect and/or identify that the particular user deviceis within a predetermined detection region of the user's device. Theuser device may then be added to a list of active user devices at theuser's device and/or logged into the user's device.

Control circuitry 304 may include processing circuitry capable ofinterpreting gestures or motion detected by sensors on-board userequipment device 300. Control circuitry 304 may include anaccelerometer, a gyroscope, a magnetometer, or other similar circuitrycapable of sensing and interpreting movements of user equipment device300. Control circuitry 304 may also include a proximity sensor capableto detecting when other devices are in the vicinity of user equipmentdevice 300. Display 312 may be provided as a stand-alone device orintegrated with other elements of user equipment device 300. Display 312may be one or more of a monitor, a television, a liquid crystal display(LCD) for a mobile device, touch screen, or any other suitable equipmentfor displaying visual images. In some embodiments, display 312 may beHDTV-capable. In some embodiments, display 312 may be a 3D display, andthe interactive media guidance application and any suitable content maybe displayed in 3D. A video card or graphics card may generate theoutput to the display 312. The video card may offer various functionssuch as accelerated rendering of 3D scenes and 2D graphics,MPEG-2/MPEG-4 decoding, TV output, or the ability to connect multiplemonitors. The video card may be any processing circuitry described abovein relation to control circuitry 304. The video card may be integratedwith the control circuitry 304. Speakers 314 may be provided asintegrated with other elements of user equipment device 300 or may bestand-alone units. The audio component of videos and other contentdisplayed on display 312 may be played through speakers 314. In someembodiments, the audio may be distributed to a receiver (not shown),which processes and outputs the audio via speakers 314.

Control circuitry 304 may receive signals from user input interface 312corresponding to the user instructions received by user input interface312. User instructions may be input using gestures performed by usingone or more fingers or hands, using of physical movement of userequipment device 300, or using any other suitable gesture or motion. Forexample, users may swipe one or more fingers across user input interface312 in a particular direction, perform a pinching or a spreading outaction with one or more fingers on user input interface 312 in aparticular direction, or physically move or shake user equipment device300 in a particular direction. Control circuitry 304 may process thereceived user input to determine the direction associated with the userinput. In some implementations, control circuitry 304 may store thereceived user input in storage 308 for future reference.

Control circuitry 304 may utilize the location information of the user'sdevice and the direction determined based on the user's gesture tocompute a vector matching the determined direction. The origin of thevector may be the coordinates of the user's device determined usinglocation determination circuitry of control circuitry 304. Controlcircuitry 304 may make a comparison to check whether any user device inits neighborhood lie on the computed vector. Control circuitry 304 mayidentify another user device to be the device indicated by the user'sgesture if the location of the other user device falls along thecomputed vector.

The guidance application may be implemented using any suitablearchitecture. For example, it may be a stand-alone application whollyimplemented on user equipment device 300. In such an approach,instructions of the application are stored locally, and data for use bythe application is downloaded on a periodic basis (e.g., from anout-of-band feed, from an Internet resource, or using another suitableapproach). In some embodiments, the media guidance application is aclient-server based application. Data for use by a thick or thin clientimplemented on user equipment device 300 is retrieved on-demand byissuing requests to a server remote to the user equipment device 300. Inone example of a client-server based guidance application, controlcircuitry 304 runs a web browser that interprets web pages provided by aremote server.

In some embodiments, the media guidance application is downloaded andinterpreted or otherwise run by an interpreter or virtual machine (runby control circuitry 304). In some embodiments, the guidance applicationmay be encoded in the ETV Binary Interchange Format (EBIF), received bycontrol circuitry 304 as part of a suitable feed, and interpreted by auser agent running on control circuitry 304. For example, the guidanceapplication may be an EBIF application. In some embodiments, theguidance application may be defined by a series of JAVA-based files thatare received and run by a local virtual machine or other suitablemiddleware executed by control circuitry 304. In some of suchembodiments (e.g., those employing MPEG-2 or other digital mediaencoding schemes), the guidance application may be, for example, encodedand transmitted in an MPEG-2 object carousel with the MPEG audio andvideo packets of a program.

User equipment device 300 of FIG. 3 can be implemented in system 400 ofFIG. 4 as user television equipment 402, user computer equipment 404,wireless user communications device 406, or any other type of userequipment suitable for accessing content, such as a non-portable gamingmachine. For simplicity, these devices may be referred to hereincollectively as user equipment or user equipment devices, and may besubstantially similar to user equipment devices described above. Userequipment devices, on which a media guidance application may beimplemented, may function as a standalone device or may be part of anetwork of devices. Various network configurations of devices may beimplemented and are discussed in more detail below.

A user equipment device utilizing at least some of the system featuresdescribed above in connection with FIG. 3 may not be classified solelyas user television equipment 402, user computer equipment 404, or awireless user communications device 406. For example, user televisionequipment 402 may, like some user computer equipment 404, beInternet-enabled allowing for access to Internet content, while usercomputer equipment 404 may, like some television equipment 402, includea tuner allowing for access to television programming. The mediaguidance application may have the same layout on various different typesof user equipment or may be tailored to the display capabilities of theuser equipment. For example, on user computer equipment 404, theguidance application may be provided as a web site accessed by a webbrowser. In another example, the guidance application may be scaled downfor wireless user communications devices 406.

In system 400, there is typically more than one of each type of userequipment device but only one of each is shown in FIG. 4 to avoidovercomplicating the drawing. In addition, each user may utilize morethan one type of user equipment device and also more than one of eachtype of user equipment device.

In some embodiments, a user equipment device (e.g., user televisionequipment 402, user computer equipment 404, wireless user communicationsdevice 406) may be referred to as a “second screen device.” For example,a second screen device may supplement content presented on a first userequipment device. The content presented on the second screen device maybe any suitable content that supplements the content presented on thefirst device. In some embodiments, the second screen device provides aninterface for adjusting settings and display preferences of the firstdevice. In some embodiments, the second screen device is configured forinteracting with other second screen devices or for interacting with asocial network. The second screen device can be located in the same roomas the first device, a different room from the first device but in thesame house or building, or in a different building from the firstdevice.

The user may also set various settings to maintain consistent mediaguidance application settings across in-home devices and remote devices.Settings include those described herein, as well as channel and programfavorites, programming preferences that the guidance applicationutilizes to make programming recommendations, display preferences, mediacontent preferences, and other desirable guidance settings. For example,if a user sets a channel as a favorite on, for example, the web sitewww.allrovi.com on their personal computer at their office, the samechannel would appear as a favorite on the user's in-home devices (e.g.,user television equipment and user computer equipment) as well as theuser's mobile devices, if desired. Therefore, changes made on one userequipment device can change the guidance experience on another userequipment device, regardless of whether they are the same or a differenttype of user equipment device. In addition, the changes made may bebased on settings input by a user, as well as user activity monitored bythe guidance application.

The user equipment devices may be coupled to communications network 414.Namely, user television equipment 402, user computer equipment 404, andwireless user communications device 406 are coupled to communicationsnetwork 414 via communications paths 408, 410, and 412, respectively.Communications network 414 may be one or more networks including theInternet, a mobile phone network, mobile voice or data network (e.g., a4G or LTE network), cable network, public switched telephone network, orother types of communications network or combinations of communicationsnetworks. Paths 408, 410, and 412 may separately or together include oneor more communications paths, such as, a satellite path, a fiber-opticpath, a cable path, a path that supports Internet communications (e.g.,IPTV), free-space connections (e.g., for broadcast or other wirelesssignals), or any other suitable wired or wireless communications path orcombination of such paths. Path 412 is drawn with dotted lines toindicate that in the exemplary embodiment shown in FIG. 4 it is awireless path and paths 408 and 410 are drawn as solid lines to indicatethey are wired paths (although these paths may be wireless paths, ifdesired). Communications with the user equipment devices may be providedby one or more of these communications paths, but are shown as a singlepath in FIG. 4 to avoid overcomplicating the drawing.

Although communications paths are not drawn between user equipmentdevices, these devices may communicate directly with each other viacommunication paths, such as those described above in connection withpaths 408, 410, and 412, as well other short-range point-to-pointcommunication paths, such as USB cables, IEEE 1394 cables, wirelesspaths (e.g., Bluetooth, infrared, IEEE 802-11x, etc.), or othershort-range communication via wired or wireless paths. BLUETOOTH is acertification mark owned by Bluetooth SIG, INC. The user equipmentdevices may also communicate with each other directly through anindirect path via communications network 414.

System 400 includes content source 416 and media guidance data source418 coupled to communications network 414 via communication paths 420and 422, respectively. Paths 420 and 422 may include any of thecommunication paths described above in connection with paths 408, 410,and 412. Communications with the content source 416 and media guidancedata source 418 may be exchanged over one or more communications paths,but are shown as a single path in FIG. 4 to avoid overcomplicating thedrawing. In addition, there may be more than one of each of contentsource 416 and media guidance data source 418, but only one of each isshown in FIG. 4 to avoid overcomplicating the drawing. (The differenttypes of each of these sources are discussed below.) If desired, contentsource 416 and media guidance data source 418 may be integrated as onesource device. Although communications between sources 416 and 418 withuser equipment devices 402, 404, and 406 are shown as throughcommunications network 414, in some embodiments, sources 416 and 418 maycommunicate directly with user equipment devices 402, 404, and 406 viacommunication paths (not shown) such as those described above inconnection with paths 408, 410, and 412.

Content source 416 may include one or more types of content distributionequipment including a television distribution facility, cable systemheadend, satellite distribution facility, programming sources (e.g.,television broadcasters, such as NBC, ABC, HBO, etc.), intermediatedistribution facilities and/or servers, Internet providers, on-demandmedia servers, and other content providers. NBC is a trademark owned bythe National Broadcasting Company, Inc., ABC is a trademark owned by theABC, INC., and HBO is a trademark owned by the Home Box Office, Inc.Content source 416 may be the originator of content (e.g., a televisionbroadcaster, a Webcast provider, etc.) or may not be the originator ofcontent (e.g., an on-demand content provider, an Internet provider ofcontent of broadcast programs for downloading, etc.). Content source 416may include cable sources, satellite providers, on-demand providers,Internet providers, over-the-top content providers, or other providersof content. Content source 416 may also include a remote media serverused to store different types of content (including video contentselected by a user), in a location remote from any of the user equipmentdevices. Systems and methods for remote storage of content, andproviding remotely stored content to user equipment are discussed ingreater detail in connection with Ellis et al., U.S. Pat. No. 7,761,892,issued Jul. 20, 2010, which is hereby incorporated by reference hereinin its entirety.

Media guidance data source 418 may provide media guidance data, such asthe media guidance data described above. Media guidance application datamay be provided to the user equipment devices using any suitableapproach. In some embodiments, the guidance application may be astand-alone interactive television program guide that receives programguide data via a data feed (e.g., a continuous feed or trickle feed).Program schedule data and other guidance data may be provided to theuser equipment on a television channel sideband, using an in-banddigital signal, using an out-of-band digital signal, or by any othersuitable data transmission technique. Program schedule data and othermedia guidance data may be provided to user equipment on multiple analogor digital television channels.

In some embodiments, guidance data from media guidance data source 418may be provided to users' equipment using a client-server approach. Forexample, a user equipment device may pull media guidance data from aserver, or a server may push media guidance data to a user equipmentdevice. In some embodiments, a guidance application client residing onthe user's equipment may initiate sessions with source 418 to obtainguidance data when needed, e.g., when the guidance data is out of dateor when the user equipment device receives a request from the user toreceive data. Media guidance may be provided to the user equipment withany suitable frequency (e.g., continuously, daily, a user specifiedperiod of time, a system-specified period of time, in response to arequest from user equipment, etc.). Media guidance data source 418 mayprovide user equipment devices 402, 404, and 406 the media guidanceapplication itself or software updates for the media guidanceapplication.

Media guidance applications may be, for example, stand-aloneapplications implemented on user equipment devices. For example, themedia guidance application may be implemented as software or a set ofexecutable instructions which may be stored in storage 308, and executedby control circuitry 304 of a user equipment device 300. In someembodiments, media guidance applications may be client-serverapplications where only a client application resides on the userequipment device, and server application resides on a remote server. Forexample, media guidance applications may be implemented partially as aclient application on control circuitry 304 of user equipment device 300and partially on a remote server as a server application (e.g., mediaguidance data source 418) running on control circuitry of the remoteserver. When executed by control circuitry of the remote server (such asmedia guidance data source 418), the media guidance application mayinstruct the control circuitry to generate the guidance applicationdisplays and transmit the generated displays to the user equipmentdevices. The server application may instruct the control circuitry ofthe media guidance data source 418 to transmit data for storage on theuser equipment. The client application may instruct control circuitry ofthe receiving user equipment to generate the guidance applicationdisplays.

Content and/or media guidance data delivered to user equipment devices402, 404, and 406 may be over-the-top (OTT) content. OTT contentdelivery allows Internet-enabled user devices, including any userequipment device described above, to receive content that is transferredover the Internet, including any content described above, in addition tocontent received over cable or satellite connections. OTT content isdelivered via an Internet connection provided by an Internet serviceprovider (ISP), but a third party distributes the content. The ISP maynot be responsible for the viewing abilities, copyrights, orredistribution of the content, and may only transfer IP packets providedby the OTT content provider. Examples of OTT content providers includeYOUTUBE, NETFLIX, and HULU, which provide audio and video via IPpackets. Youtube is a trademark owned by Google Inc., Netflix is atrademark owned by Netflix Inc., and Hulu is a trademark owned by Hulu,LLC. OTT content providers may additionally or alternatively providemedia guidance data described above. In addition to content and/or mediaguidance data, providers of OTT content can distribute media guidanceapplications (e.g., web-based applications or cloud-based applications),or the content can be displayed by media guidance applications stored onthe user equipment device.

Media guidance system 400 is intended to illustrate a number ofapproaches, or network configurations, by which user equipment devicesand sources of content and guidance data may communicate with each otherfor the purpose of accessing content and providing media guidance. Theembodiments described herein may be applied in any one or a subset ofthese approaches, or in a system employing other approaches fordelivering content and providing media guidance. The following fourapproaches provide specific illustrations of the generalized example ofFIG. 4.

In one approach, user equipment devices may communicate with each otherwithin a home network. User equipment devices can communicate with eachother directly via short-range point-to-point communication schemesdescribed above, via indirect paths through a hub or other similardevice provided on a home network, or via communications network 414.Each of the multiple individuals in a single home may operate differentuser equipment devices on the home network. As a result, it may bedesirable for various media guidance information or settings to becommunicated between the different user equipment devices. For example,it may be desirable for users to maintain consistent media guidanceapplication settings on different user equipment devices within a homenetwork, as described in greater detail in Ellis et al., U.S. patentapplication Ser. No. 11/179,410, filed Jul. 11, 2005. Different types ofuser equipment devices in a home network may also communicate with eachother to transmit content. For example, a user may transmit content fromuser computer equipment to a portable video player or portable musicplayer.

In a second approach, users may have multiple types of user equipment bywhich they access content and obtain media guidance. For example, someusers may have home networks that are accessed by in-home and mobiledevices. Users may control in-home devices via a media guidanceapplication implemented on a remote device. For example, users mayaccess an online media guidance application on a website via a personalcomputer at their office, or a mobile device such as a PDA orweb-enabled mobile telephone. The user may set various settings (e.g.,recordings, reminders, or other settings) on the online guidanceapplication to control the user's in-home equipment. The online guidemay control the user's equipment directly, or by communicating with amedia guidance application on the user's in-home equipment. Varioussystems and methods for user equipment devices communicating, where theuser equipment devices are in locations remote from each other, isdiscussed in, for example, Ellis et al., U.S. Pat. No. 8,046,801, issuedOct. 25, 2011, which is hereby incorporated by reference herein in itsentirety.

In a third approach, users of user equipment devices inside and outsidea home can use their media guidance application to communicate directlywith content source 416 to access content. Specifically, within a home,users of user television equipment 402 and user computer equipment 404may access the media guidance application to navigate among and locatedesirable content. Users may also access the media guidance applicationoutside of the home using wireless user communications devices 406 tonavigate among and locate desirable content.

In a fourth approach, user equipment devices may operate in a cloudcomputing environment to access cloud services. In a cloud computingenvironment, various types of computing services for content sharing,storage or distribution (e.g., video sharing sites or social networkingsites) are provided by a collection of network-accessible computing andstorage resources, referred to as “the cloud.” For example, the cloudcan include a collection of server computing devices, which may belocated centrally or at distributed locations, that provide cloud-basedservices to various types of users and devices connected via a networksuch as the Internet via communications network 414. These cloudresources may include one or more content sources 416 and one or moremedia guidance data sources 418. In addition or in the alternative, theremote computing sites may include other user equipment devices, such asuser television equipment 402, user computer equipment 404, and wirelessuser communications device 406. For example, the other user equipmentdevices may provide access to a stored copy of a video or a streamedvideo. In such embodiments, user equipment devices may operate in apeer-to-peer manner without communicating with a central server.

The cloud provides access to services, such as content storage, contentsharing, or social networking services, among other examples, as well asaccess to any content described above, for user equipment devices.Services can be provided in the cloud through cloud computing serviceproviders, or through other providers of online services. For example,the cloud-based services can include a content storage service, acontent sharing site, a social networking site, or other services viawhich user-sourced content is distributed for viewing by others onconnected devices. These cloud-based services may allow a user equipmentdevice to store content to the cloud and to receive content from thecloud rather than storing content locally and accessing locally-storedcontent.

A user may use various content capture devices, such as camcorders,digital cameras with video mode, audio recorders, mobile phones, andhandheld computing devices, to record content. The user can uploadcontent to a content storage service on the cloud either directly, forexample, from user computer equipment 404 or wireless usercommunications device 406 having content capture feature. Alternatively,the user can first transfer the content to a user equipment device, suchas user computer equipment 404. The user equipment device storing thecontent uploads the content to the cloud using a data transmissionservice on communications network 414. In some embodiments, the userequipment device itself is a cloud resource, and other user equipmentdevices can access the content directly from the user equipment deviceon which the user stored the content.

Cloud resources may be accessed by a user equipment device using, forexample, a web browser, a media guidance application, a desktopapplication, a mobile application, and/or any combination of accessapplications or the same. The user equipment device may be a cloudclient that relies on cloud computing for application delivery, or theuser equipment device may have some functionality without access tocloud resources. For example, some applications running on the userequipment device may be cloud applications, i.e., applications deliveredas a service over the Internet, while other applications may be storedand run on the user equipment device. In some embodiments, a user devicemay receive content from multiple cloud resources simultaneously. Forexample, a user device can stream audio from one cloud resource whiledownloading content from a second cloud resource. Or, a user device candownload content from multiple cloud resources for more efficientdownloading. In some embodiments, user equipment devices can use cloudresources for processing operations such as the processing operationsperformed by processing circuitry described in relation to FIG. 3.

For illustrative purposes, the present invention is described in thecontext of a venue where several users, each having a correspondingdevice, are present. For illustrative purposes, the present invention isdescribed from the perspective of a user who wishes to transfer asetting from his or her mobile device to another user's mobile device.In some implementations, the user's mobile device may be user equipmentdevice 300. The mobile devices of other users may be similar in terms orform and capability to user equipment device 300. However, it should beunderstood that the above and below teachings are equally applicable toany other venue and with other types of user devices. For example, notall the devices at the venue may be mobile devices.

In an illustrative embodiment, user equipment device 300 may be operatedby John who has purchased a season pass from his cable provider to watchthe Battlestar Galactica series on user equipment device 300. Bob, whohappens to be John's friend, may visit John's house and may also wish towatch Battlestar Galactica on his own mobile device. Accordingly, Johnmay select the Battlestar Galactica series on his device and may flickit towards Bob's device using a gesture. In response, John's device mayselect the setting authorizing viewing of the Battlestar Galacticaseries and send it to Bob's device. Bob may thus get authorization toalso watch the Battlestar Galactica series from John's cable provider.

In some implementations, any other device within a particular range ofthe user's device may be a neighboring device. For example, when Bob'sdevice is within a certain range of John's device, Bob's device may beconsidered to be a neighbor of John's device. In some implementations,the value of the range may be a pre-determined value stored in storage308. In some implementations, for example, the value of the range may bea value up to 10 meters. In some implementations, the value of the rangemay be a variable parameter that is adjusted dynamically by controlcircuitry 304 based on performance feedback. In some implementations,the value of the range may be a parameter configurable by the user. Alarge value of the range may allow the user to transfer a setting toanother device which is far away. At the same time, a large value of therange may make it more difficult to identify with precision the deviceto which the user wants to transmit the setting. In someimplementations, another device may not automatically permit itself tobe considered a neighboring device of the user's device even if it islocated within range of the user's device unless it explicitly orimplicitly grants such permission to the user's device.

In some implementations, each device may periodically or continuouslysend its location information to a central server over the Internet. Insome implementations, the central server may subsequently transmit thelocation information to all the devices present at a venue. In someimplementations, the devices may query the central server to determinethe location information of any other devices present within theirrange. For example, the user's device may query the central server todetermine its neighboring devices and the central server may respondwith a message identifying all devices neighboring the user's device.

In some implementations, the user's device may learn of its neighboringdevices without relying on the central server. In some implementations,control circuitry 304 of the user's device may broadcast a message on aparticular channel of a wireless network or any other suitable radiofrequency enquiring whether there are any other devices within itsrange. The broadcast message may include information identifying theuser's device, the range of the user's device, and the geographiccoordinates of the user's device. If any other devices within range ofthe user's device receive the message broadcast by the user's device,they may send the user's device a similar message including informationidentifying themselves and indicating their geographic coordinates. Ifdevices outside the range of the user's device receive the messagebroadcast by the user's device they may ignore the message. Devices thatreceive the message broadcast by the user's device may determine whetherthey are within range of the user's device by computing their distancefrom the user's device and comparing the computed distance to the rangeof the user's device specified in the broadcast message. Devices maycompute their distance from the user's device by using their ownlocation information in conjunction with the geographic coordinates ofthe user's device specified in the broadcast message.

In some implementations, devices may periodically broadcast a messageincluding information identifying themselves, their range, and theirgeographic coordinates. The user's device may learn of devices that areits neighbors by receiving such periodically broadcast messages. Controlcircuitry 304 of the user's device may extract relevant information fromthe message it receives to determine whether the device that transmittedthe message is its neighbor.

In some implementations, the user's device may periodically (orcontinuously) use its proximity sensors to determine whether any otherdevices are present within its range. If the user's device detects thatanother device is indeed present within its range, it may transmit amessage to the detected device requesting its location andidentification information.

FIG. 5 shows an illustrative display screen that may be used to indicatecategories of media guidance application settings or data available fora user to transfer to another device in accordance with an embodiment ofthe invention. Control circuitry 304 may generate display screen 500 fordisplay on the user's device automatically or responsive to a userrequest. In some implementations, control circuitry 304 may generatescreen 500 for display on the user's device in response to detectingthat another device is in proximity to the user's device. The detectionof other devices may be performed automatically at one or more presettimes. In some implementations, control circuitry 304 may generatedisplay screen 500 in response to receiving a signal from user inputinterface 312 or other sensor circuitry corresponding to a user gesture.For example, the user may perform a swiping gesture on user inputinterface 312 or a gesture in three dimensional space using handsdetected by a camera or infra-red sensor while perusing content on userequipment device 300. For example, control circuitry 304 may generatedisplay screen 500 when John selects the Battlestar Galactica series onhis device and flicks it towards Bob's device using a gesture.

In some implementations, title region 502 may indicate that displayscreen 500 displays categories of settings that are available for a userto select a setting from and transfer to another device. Categories ofsettings may be generated by control circuitry 304 based on settingsthat are available for transfer to another device. For example,categories of settings may include media content authorizations 504,device settings 506, parental controls 508, favorites 510, and calendarsettings 512. Media content authorizations 504 may include settingsrelated to media content including, but not limited to, pictures, music,videos, media content recommendations, channel and program favorites,programming preferences, and media content preferences. Media contentauthorizations 504 may be in form of license files. Device settings 506may include settings that customize the user's device 300, like colorscheme settings, display resolution settings, audio settings, and anyother device customizable settings. Parental controls 508 may includesettings that authorize or restrict the viewing of programs, channels,and/or websites on a user-based criterion. Favorites 510 may includesettings related to the user's favorite channels, websites, or any othercontent. Calendar settings 512 may include settings related toappointments, meeting requests, or any other events. Other categories ofsettings may also be displayed on display screen 500. For example, othercategories of settings may include contacts, recording scheduling,e-mail, game or chat requests, screenshots, bookmarks, and websitecredentials. Settings may be stored locally on storage 308. In thealternative, settings may be stored on a server from which the settingsmay be retrieved when required. Settings may also be stored in partlocally and in part on a server.

In some implementations, any of the categories of settings displayed ondisplay screen 500 may be user selectable. In response to user selectionof a category of settings, control circuitry 304 may receive the userselection and in response display a further list of settings within theselected category of settings available for transfer.

In some implementations, control circuitry 304 may show display screen500 in response to a user request to view setting categories. In someimplementations, control circuitry 304 may show display screen 500 inresponse to a user selection of an item on display 100 of FIG. 1 ordisplay 200 of FIG. 2.

FIG. 6 shows an illustrative display screen that may be used to indicatesettings within a particular category of settings available for a userto transfer to another device in accordance with an embodiment of theinvention. In some implementations, display screen 600 may include titleregion 602, display region 604, and navigation icons 606 and 608.Display region 604 may provide a comprehensive or partial list ofsettings available within a category of settings available for the userto select and transfer to another device. In some implementations,display region 304 may list only the most frequently used settingswithin a category.

For purposes of illustration and not of limitation, title region 602 ofFIG. 6 shows an example where the user selected the category of parentalcontrol settings on display screen 500. Accordingly, display region 604lists parental control settings. Parental control settings may include,for example, restricted television programs, restricted program titles,restricted channels, restricted ratings, restricted actors, restrictedproducers, restricted musical artists, restricted sponsors, restrictedmetadata terms, restricted themes, restricted genres, restrictedcategories, restricted time periods, restricted limits for purchasingcontent, and/or any other suitable restrictions.

In some implementations, parental control settings displayed in displayregion 604 may be limited to settings that are transferable to otherdevices. A setting may be transferable if the user has authorization totransfer the setting. For example, the user's device may be authorizedto view PG-13 and PG-18 rated media content but not R rated mediacontent. Accordingly, user may transfer settings corresponding only toviewing of PG-13 and PG-18 rated media content but not the settingcorresponding to R rated media content. In this case, display region 604may display settings corresponding only to viewing of PG-13 and PG-18rated media content. In some implementations, the user's device may beauthorized to transfer settings corresponding to viewing of mediacontent containing violence, sex, coarse language, and/or any othermedia content identifier. In some implementations, the user's device maybe authorized to view media content for only a limited number of hoursin a given time period. For example, the user's device may be restrictedto viewing two hours of programming per day or ten hours of programmingper week. The user may be able to transfer this setting to otherdevices. Settings displayed in display region 604 when the user selectsa settings category other than parental control settings on displayscreen 500 may similarly be limited to settings that are transferable.

In some implementations, settings may be stored locally on the user'smobile device. In some implementations, settings may be stored on aremote server and retrieved when required. In some implementations,settings may be generated when required if they did not previouslyexist.

Display region 604 may display media content authorizations that aretransferable to other user devices if the user selects the category ofmedia content authorizations on display screen 500. In someimplementations, the user's mobile device may be authorized to view aparticular television series, like Battlestar Galactica. In someimplementations, the user's mobile device may have authorization to viewand/or record particular on-demand content. On-demand content mayinclude a variety of media content like television programming andpay-per-view content. In some implementations, the user's mobile devicemay have authorization to listen to or stream music content.

In some implementations, media content authorizations may be stored aslicense files in storage 308. License files may include informationabout the identity of the user and/or device and media content accessright and permission information. The user or device may be identifiedby a unique number assigned to identify the user. Media contentauthorization information may describe access rights to media contentand permission information. Access rights may describe conditions ofaccess to one or more media content. For example, authorization may bein terms of subscription to a grouping of media content that areprovided by a media content service provider for a period of time, andmay depend on the terms of a service agreement between a user and thecopyright owner or distributor. For example, a user may be subscribed toaccess the entire television series of Battlestar Galactica. Forexample, the user may be subscribed to a sports broadcast package thatgrants access to a number of pay-per-view shows or a number of sportschannels. When a user elects to transfer an authorization enablingaccess the entire television series of Battlestar Galactica, controlcircuitry 304 may retrieve the corresponding license file from storage308 and transfer the license file. Accordingly, if the user istransferring an authorization enabling another user to access thetelevision series Battlestar Galactica, the authorization may beeffective on the device the authorization is transferred to only for theduration based on the subscription of the user who transferred thesetting.

License files may also include decryption keys for encrypted content.For example, encrypted music, video, or other content may be stored instorage 308 and a corresponding license file may be required to unlockthe content and peruse it. It may not be possible to unlock the contentwithout having possession of the corresponding license file. Licensefiles may also store a user's website credentials. For example, theuser's authentication information for a website like Hulu or Netflix maybe encrypted and stored in storage 308. Control circuitry 304 may needto access the corresponding license file in order to decrypt the websitecredentials stored in storage 308. Accordingly, in order to peruse thecontent or access the relevant website, on a device other than userequipment device 300, it may be necessary to transfer the license filein tandem with the desired content and website credentials. In someimplementations, the license file may be stored on a server under theownership of the copyright owner or distributor. In such instances,control circuitry 304 may retrieve the license file from the server whenrequired.

Display region 604 may display website-credential settings that aretransferable to other user devices if the user selects the category ofwebsite credential settings on display screen 500. In someimplementations, the user's mobile device may be authorized to accessmedia content on websites like Hulu, Netflix, ESPN, etc. Generally, suchwebsites offer subscribers the opportunity to view media content onlinebased on the subscription package that the user purchases. Access tomedia content available through such websites is controlled usingwebsite credentials which may include a username and passwordcombination, biometric identifiers, encryptions keys, and the like. Insome implementations, these website credentials may be stored locally onthe user's mobile device for user convenience.

Display region 604 may display favorite channel settings that aretransferable to other user devices if the user selects the category offavorite channel settings on display screen 500. For example, the usermay mark certain channels as favorites manually, control circuitry 304may automatically mark channels as favorites based on the user's viewingpreferences and/or habits, or a central server may suggest channels tomark as favorites based on popular ratings. Accordingly, display region604 may display favorite channels settings that the user's mobile devicehas authorization for and are transferable to other user devices. Insome implementations, the user's mobile device may be authorized to viewthe favorite channels of another user.

Display region 604 may display recording scheduling settings that aretransferable to other user devices if the user selects the category ofrecording scheduling settings on display screen 500. In someimplementations, the user's mobile device may be authorized to recordbroadcast, on-demand, and/or pay-per-view media content. In someimplementations, the user may setup media content to be recordedautomatically based on a schedule.

Display region 604 may display calendar, contact, e-mail, reminder,screenshot, bookmark, or text message settings that are transferable toother user devices if the user selects one of the above categories ofsettings on display screen 500. For example, the user's device may beauthorized to view e-mails and text messages from a particular senderand may have authorization to share the e-mails and text messages withother users. Calendar settings may include events, reminders, tasks,appointments, and other calendar markers. Contact settings may include alist of the user's contacts. Each contact entry may include informationregarding the person or organization associated with the contact entry.Reminder settings may include details about events or tasks. Screenshotsettings may include information regarding the portion of the screenthat is sharable by the user. Bookmark settings may include tagsassociated with websites, audio, video, or other media content.

In some implementations, display screen 600 includes navigation icons606 and 608 which enable a user to navigate between the settings shownin display region 604. In some implementations, control circuitry 304may receive a user selection of navigation icons 606 and 608 selectedusing user input interface 312. Once the user has decided on a settingto transfer to another device, control circuitry 304 may receive a userselection of that setting using user input interface 312. In someimplementations, the setting selected by the user may be marked bycontrol circuitry 304 for easy user identification. For example, theselected setting may be highlighted, marked using icons, displayed in aseparate window, or visually distinguished in any other suitable manner.

In some implementations, the user may choose to associate additionalrestrictions with the setting selected for transfer. Control circuitry304 may generate and display an option for the user to associaterestrictions with the selected setting. For example, the user maystipulate that the setting may only be valid on the device to which isit transferred for a period of time determined by the user. The user maystipulate that the setting may not be transferred to a further thirduser device. The user may stipulate that the setting may only betransferred to a limited number of users (where the number of users maybe configurable by the user or may be determined automatically based onaccess rights) other than the user to whom the setting was originallytransferred. If the setting pertains to access rights for recordingon-demand media content, for example, the user may stipulate that theuser who receives the setting may only view on-demand content but notrecord it. If the setting pertains to an e-mail, calendar event,reminder, text message, or a media content, the user may stipulate thatthe user who receives the setting may only view the setting once. Forexample, the setting may automatically be deleted from the recipient'sdevice after the recipient has viewed the setting. The user may alsochoose to associate any other suitable restriction to the settingselected for transfer.

In some implementations, control circuitry 304 may retrieve informationassociated with the setting the user selected from display screen 600.For example, control circuitry 304 may query an internal database,implemented using SQL or any other suitable database programminglanguage, to retrieve relevant setting information. Control circuitry304 may also retrieve access right information from a media server ifnecessary. Control circuitry 304 may further prepare the retrievedinformation for transfer by generating a message encapsulating thesetting information to be transferred.

FIG. 7 illustrates an example of a message that may be transferred fromthe user's device to another device in accordance with an embodiment ofthe invention. The message may carry information about the identity ofthe user and information corresponding to the setting being transferred.The message may include user profile information section 710 containinguser profile data 720. In some implementations, depending on the settingbeing transferred, the message may include section 730 that containsaccess right and permission information. Section 730 may include accessright information for media content 740, 750, and 760.

User profile information section 710 is used to identify the user.Section 710 may include descriptive information 720 about a user such asuser ID number, name, gender, and age. The user ID number may be aunique number assigned to identify a user. Examples of such ID numbersmay include national identity card numbers, social security numbers,passport numbers, or a hash code generated from the full name and birthdate of the user.

Section 730 may include content authorization information whichdescribes access rights to media content and permission information. Theaccess rights may describe conditions of access to one or more mediacontent. The term subscription may refer to any grouping of mediacontent that is provided by a media content service provider for aperiod of time, and that depend on the terms of a service agreementbetween a user and the copyright owner or distributor. For example, auser may be subscribed to access the entire television series ofBattlestar Galactica. For example, the user may be subscribed to asports broadcast package that grants access to a number of pay-per-viewshows or a number of sports channels. Accordingly, if the user istransferring the setting authorizing another user to access thetelevision series Battlestar Galactica, the authorization may beeffective on the device the setting is transferred to only for theduration based on the subscription of the user who transferred thesetting.

Subscription information may include an ID number of the user, anaccount number with a service provider, a duration of the subscription,and a hash code. The ID number may be used to verify the identity of theuser and the account number may be used to verify the servicessubscribed by the user. The duration may indicate the length of thesubscription from a start date of service, expiration date of theservice, time remaining available in the subscription, any othersuitable duration information or any combination thereof. The hash codemay be a unique number assigned to the user that is compared with avalue stored on a central server. The hash code is only valid for theduration of the subscription. After the subscription has expired, theuser will need to renew the subscription and obtain a new hash code inorder to continue maintaining access to the subscribed services.Possession of the information listed above will enable the device towhich the setting is being transferred to access the media content withwhich the setting is associated.

Listing 740 is an example of an access right for a media contentdescribed by metadata, which may include information that describes amedia content such as the content type, title, genre, composer, author,performer, file size, and time length of the media asset. Listing 740provides an example access right described by metadata. The listingdescribes a media content having a content type 741 of movie, title 742of “War of the Worlds,” and genre 743 of sci-fi. Hash codes may be usedto securely protect metadata stored in plain text from tampering byunauthorized users. Hash codes may also provide a layer of protectionsecuring the message as it is being transmitted to another device. Forexample, hash codes may prevent a third party who is in the vicinity ofthe transmission from covertly modifying the message or fromintercepting the message.

In some implementations, control circuitry 304 may compute the hash code744 as the result of hashing a concatenation of the metadata 741-743,using a hashing algorithm only usable by control circuitry 304 of theuser's mobile device. Modification of the plain text metadata in listing740 without modification of the hash code would corrupt the informationin the listing 740. When control circuitry 304 of the user's mobiledevice or of the device the setting is transferred to retrieves thecontent authorization information for the user, including access rightlisting 740, it can verify whether the listing has been compromised, byre-computing the hash code based on metadata 741-743, and comparing withhash code 744. If the computed and stored hash code match, controlcircuitry 304 determines that the user is authorized to access the mediacontent corresponding to listing 740. If the hash codes do not match,control circuitry 304 determines that the user is not authorized toaccess the media content, and may invoke a penalty on the user, such asa fine, or revocation of all access rights in the content authorizationinformation of the user.

Listing 750 is an example of an access right for a media contentdescribed without metadata. Listing 750 includes an ID number 751, hashcode 752, date stamp 753, and time stamp 754. ID number 751 may be aunique ID number for the media asset. Date stamp 753 and time stamp 754may indicate a date and time at which the access right expires. Hashcode 752 may be a hashed value of an ID number, date information, timeinformation, user profile information, any other suitable contentauthorization information or subscription information or any combinationthereof. The hash code may prevent against tampering of the accessright.

Listing 760 is an example of an access right for accessing a channel.The listing may include subscription term 761, which indicates theduration of the subscription. Other variants of 761 may includeone-time, annual or seasonal. Hash code 762 may be a hashed value of anID number, date information, time information, user profile information,any other suitable content authorization information or subscriptioninformation or any combination thereof. In this case, only the hashedvalue is stored to reduce the amount of information about the accessright that needs to be stored or transmitted. It should be understoodthat other variants and combinations of the information describedpreviously may also be used to describe access rights to media content.

In some implementations, message 700 may also include fields (not shown)for encapsulating a setting directly. For example, if the user wants totransfer an e-mail, text message, reminder, calendar event, bookmark,screenshot, media content recommendation, and game request setting, orany other setting related to an individual data item, message 700 mayinclude a data structure or a field to contain the relevant setting.

FIGS. 8( a) and 8(b) show two illustrative methods for transferring asetting from a first device to a second device indicated by a usergesture in accordance with an embodiment of the invention. FIG. 8( a) isan illustration of one scenario in which the user is present at a venuewith other users. Each of the other users may have a correspondingdevice. For example, two of the user's friends Bob and Alice, eachhaving devices 810 and 812, respectively, may be at the venue with theuser. For example, the user, John, may be located at coordinates (x_(J),y_(J), z_(J)), Bob may be located at coordinates (x_(B), y_(B), z_(B)),and Alice may be located at coordinates (x_(A), y_(A), z_(A)), wherecoordinates (x_(J), y_(J), z_(J)), (x_(B), y_(B), z_(B)), (x_(A), y_(A),z_(A)) are mutually different from each other. The coordinatescorresponding to the location of each device may be denoted by a3-tuple. In some implementations, control circuitry 304 may receive auser selection of a setting from display screen 600 and may prompt theuser to perform a gesture using, for example, a hand, to indicate thedevice to which the setting should be transferred.

In some implementations, control circuitry 304 may detect that user haspressed down on a setting shown on display screen 600 using a finger andhas performed a swiping action dragging the setting in the direction ofthe device the user would like to transfer that setting to. Controlcircuitry 304 may receive the user selection of the setting from displayscreen 600. Control circuitry 304 may receive the user input registeredby user input interface 312 and may process the received user input todetermine the direction the user is gesturing in. In someimplementations, control circuitry 304 may store the received user inputin storage 308 for future reference. For example, John may haveauthorization to view the entire Battlestar Galactica series on-demandand may desire to allow his friend, Bob, to also be able watch the sameseries. To accomplish this, John can navigate to the settingcorresponding to authorization to watch Battlestar Galactica fromdisplay screen 600, then press down on the setting using his finger andsimultaneously drag his finger in the direction in which Bob is locatedrelative to John—starting from position 802, John may drag setting 808in direction 806 to position 804. User input interface 312 may registersuch a user input and may transmit a signal generated based on theregistered user input to control circuitry 304. In the event that Bob islocated to the right of John, direction 806 may be towards the right ofstarting position 802. It will be understood that direction 806 maychange accordingly based on the location of Bob's device relative to thelocation of John's device.

FIG. 8( b) is another illustrative method for transferring a settingfrom a first device to a second device based on a user gesture inaccordance with an embodiment of the invention. Continuing the aboveexample, in some implementations, control circuitry 304 may receive aselection of a setting from display screen 600 that John may desire totransfer to Bob and control circuitry 304 may further receive a userinput indicative of the direction in which Bob is located based on Johnshaking his mobile device in the relative direction in which Bob islocated. In some implementations, control circuitry 304 may detect theuser's device being shaken back and forth in a direction several times.Control circuitry 304 may receive a signal from a sensor, like anaccelerometer, that senses the gesture or motion the user makes with hisdevice. Control circuitry 304 may then process the signal to determinethe direction indicated by the gesture, as discussed further below. Insome implementations, the vigor with which John shakes his mobile devicemay not be as critical as the direction in which he shakes his mobiledevice. It will be understood that the invention is not limited to thegestures described above. Any other suitable gestures or combinationthereof may also be used. In some implementations, the directionassociated with the physical movement of the mobile device may beregistered by control circuitry 304 using position information circuitryor an accelerometer.

In some implementations, the target device (e.g., Bob's device) to whichJohn wants to send a selected setting may not be in the same room asJohn. For example, Bob may be in a room directly above or below the roomwhere John is located. Accordingly, John may turn his deviceperpendicular to the floor of the room and make a gesture upwards ordownwards on user input interface 312. For example, control circuitry304 may detect the orientation of the user's device relative to floor ofthe user's location or some other reference point and subsequentlydetect movement of the device along or perpendicular to the previousorientation. The direction of the movement and the orientation of thedevice may indicate the direction to send the setting in. For example,orienting the user's device perpendicular to the floor and moving thedevice upwards may indicate that the user desires to transfer a selectedsetting to another device located in a room above the user. Controlcircuitry 304 may detect that orientation of user equipment device 300via the gyroscope or other suitable sensor. Control circuitry 304 mayreceive a signal from user interface circuitry 312 that is generatedbased on the registered user input.

In some implementations, control circuitry 304 may receive signalscorresponding to gestures not made directly in contact with userequipment device 300. For example, gestures could be made in threedimensional space. For example, John could be perusing content on userequipment device 300 in the living room and might hold out his handstoward user equipment device 300 with fingers outspread, make pinchingmotion as if to grab a setting, and move his hand in the direction ofthe user device he wants to send the setting to. The camera in userequipment device 300 may detect the user's gesture. Control circuitry304 may receive a signal from the camera corresponding to the detectedgesture. In some implementations, the user may perform a gesture inrelation to a reference point.

In some implementations, control circuitry 304 may receive signalscorresponding to multiple gestures from the user, where each gesture maycorrespond to a different direction, instructing control circuitry 304to transfer the selected setting to devices present in each of thegestured directions. For example, John may be present at a venue withboth Bob and Alice and he may wish to share a setting with both Bob andAlice. Accordingly, John may first perform a gesture in Bob's directionfollowed by a gesture in Alice's direction.

In some implementations, once control circuitry 304 has registered thedirection in which the user wishes to transmit the selected setting in,control circuitry 304 may proceed to determine the device present in thedirection indicated by the user. In some implementations, controlcircuitry 304 of the user's device may know or may learn the locationsof neighboring devices associated with other users as discussed above.

In some implementations, control circuitry 304 may utilize the locationinformation of the user's device and the direction registered based onthe user's gesture to compute a reference vector matching the registereddirection. The origin of the reference vector may be the coordinates ofthe user's device. The reference vector may be a vector of coordinateswhere each entry of the reference vector is a coordinate that lies alongthe registered direction. The first entry of the reference vector, theorigin, may be the coordinates (x_(J), y_(J), z_(J)) of the user'sdevice. The coordinate in each subsequent entry of the reference vectormay be a pre-determined distance away from the coordinate at theprevious entry of the reference vector. For example, the referencevector may have the form [(x_(J), y_(J), z_(J)), (x₂, y₂, z₂), (x₃, y₃,z₃), . . . , (x_(n), y_(n), z_(n))], where n is a positive integer. Thedistance between any two consecutive entries of the reference vector,e.g., (x₂, y₂, z₂) and (x₃, y₃, z₃), may be a pre-determined value. Thedistance may be a Euclidean distance value. The reference vector may bestored in storage 308. The coordinate in the last entry of the referencevector may be at a pre-determined distance away from the coordinate inthe first entry of the reference vector, i.e., (x_(J), y_(J), z_(J)) maybe a pre-determined distance away from (x_(n), y_(n), Z_(n)).

Control circuitry 304 may make a comparison to check whether any of itsneighboring devices lie on the computed reference vector. For example,control circuitry 304 may determine whether the coordinates (x_(B),y_(B), z_(B)) of Bob's device match one of the entries of the referencevector. In the alternative, control circuitry 304 may determine whetherthe distance between (x_(B), y_(B), z_(B)) and any one of the entries ofthe reference vector is less than a threshold distance. If the distancebetween (x_(B), y_(B), z_(B)) and any one of the entries of thereference vector is indeed less than the threshold distance then controlcircuitry 304 may determine Bob's device located at coordinates (x_(B),y_(B), z_(B)) to be located in the direction indicated by the user,i.e., the location of Bob's device may match the direction indicated bythe user. If a single match is detected, then control circuitry 304 hasidentified the target device to which the user wishes to transmit thesetting selected using display screen 600. If multiple matches aredetected, then control circuitry 304 may display the detected devices ondisplay 312 and prompt the user to select the device(s) to which theuser would like to transfer the setting selected using display screen600. The user may select the intended target device(s) from the list ofdetected devices displayed.

In some implementations, control circuitry 304 may utilize the locationinformation of the user's device and the direction registered based onthe user's gesture to compute a first vector at an angle above theregistered direction in two dimensional space. The origin of the firstvector may be the coordinates of the user's device. In someimplementations, the value of the angle may be a pre-determined value.In some implementations, for example, the value of the angle may be avalue up to 30 degrees. In some implementations, the value of the anglemay be a variable parameter that is adjusted dynamically by controlcircuitry 304 based on performance feedback. In some implementations,the value of the angle may be a parameter configurable by the user. Alarge value of the angle may allow the user to indicate the device towhich the user wishes to transmit the selected setting using a gesturewhose direction may not be very precise. At the same time, a large valueof the angle may make it more difficult to identify with precision thedevice to which the user wants to transmit the setting if the user'sdevice has a large number of neighboring devices. On the other hand, asmall value of the angle may require the user to make the gesture moreprecise but may result in easy identification of the device to which theuser wishes to transmit the setting even if the user's device has alarge number of neighboring devices.

In some implementations, control circuitry 304 may also compute a secondvector at an angle below the registered direction in two dimensionalspace. The origin of the second vector may also be the coordinates ofthe user's device. The first and the second vectors may be used bycontrol circuitry 304 to define the upper and lower boundaries of acircular sector whose origin is the coordinates of the user's device andwhose radius is the range of the user's device. Control circuitry 304may use the circular sector defined in this manner as the space withinwhich to search for devices the user has gestured he or she wishes totransmit the selected setting to. For example, the circular sector maydefine a set of coordinates within which the device the user hasgestured he or she wants to transmit the selected setting to may lie.Accordingly, control circuitry 304 may check whether the coordinates(obtained from location information) of any of its neighboring deviceslie in the circular sector. If control circuitry 304 determines that thecoordinates of a single device lie in the circular sector, then controlcircuitry 304 may have successfully identified the target device towhich the user wishes to transmit the selected setting. If multiplematches are detected, then control circuitry 304 may display thedetected devices on display 312 and prompt the user to select thedevice(s) to which the user would like to transfer the setting selectedusing display screen 600. The user may select the intended targetdevice(s) from the list of detected devices displayed.

In some implementations, control circuitry 304 may compute multiplevectors where each of the computed vectors is at an angle around theregistered direction in three dimensional space. The origin of thesevectors may be the coordinates of the user's device. Each of thesevectors may be used by control circuitry 304 to define the boundaries ofa circular cone whose origin is the coordinates of the user's device andwhose radius is the range of the user's device. Control circuitry 304may use the circular cone defined in this manner as the space withinwhich to search for devices the user has gestured he or she wishes totransmit the selected setting to. For example, the circular cone maydefine a set of coordinates within which the device the user hasgestured he or she wants to transmit the selected setting to may lie.Accordingly, control circuitry 304 may check whether the coordinates(obtained from location information) of any of its neighboring deviceslie in the circular cone. Any other multi-dimensional vector analysistools may also be used to determine the location of a target device(s).

In some implementations, control circuitry 304 may simply transmit thedirection registered based on the user's gesture to the central server.In response, the central server may identify the target device(s) theuser wishes to transmit the selected setting to and send informationidentifying the target device to control circuitry 304.

FIG. 9 shows an illustrative display screen that may be displayed to theuser to confirm that the user wishes to transfer the selected setting toan identified device in accordance with an embodiment of the invention.In some implementations, control circuitry 304 may prompt the user toconfirm that the user wishes to transmit the selected setting to theidentified target device(s). Control circuitry 304 may prompt the userusing display screen 900. In some implementations, display screen 900may include send icon 902, cancel icon 904, title region 906, counter908, and information region 910.

In some implementations, title region 906 may indicate the name of theuser of the target device identified by control circuitry 304. In thisway, display screen 900 may serve to confirm that control circuitry 304has correctly identified the device to which the user wishes to transmitthe selected setting.

In some implementations, control circuitry 304 may receive confirmationthat the device to which the user wishes to transmit the selectedsetting has been correctly identified when send icon 902 is selected.Control circuitry 304 may receive a signal corresponding to the userconfirmation. In response, control circuitry 304 may generate message700 according to the setting selected by the user, establishcommunication with the identified target device, and transmit message700 to the identified target device once communication with it hassuccessfully been established. In some implementations, controlcircuitry 304 may transmit the generated message 700 corresponding tothe selected setting to the identified target device in response to theselection of send icon 902 by the user. In some implementations, controlcircuitry 304 may delay the transmission of the generated message 700corresponding to selected setting to the identified target device by apre-determined time after the selection of send icon 902 by the user. Insome implementations, control circuitry 304 may wait until a preset timeto transmit the generated message 700 corresponding to selected settingto the identified target device.

In some implementations, control circuitry 304 may receive aninstruction to cancel the transmission when cancel icon 904 is selected.The user may chose to cancel the transmission of the selected setting tothe identified target device if, for example, control circuitry 304 didnot identify correctly the device to which the user gestured he or shewished to transmit the selected setting to. The user may also choose tocancel the transmission of the selected setting if the user changes hisor her mind about transferring the setting to the identified targetdevice.

In some implementations, counter 908 may countdown sequentially from astarting value and if no user input is received via send icon 902 orcancel icon 904 before counter 908 reaches a value of zero, controlcircuitry 304 may transmit the generated message 700 corresponding toselected setting to the identified target device. In someimplementations, the starting value of counter 908 may be a presetvalue. In some implementations, the starting value of counter 908 may bea user configurable parameter. In some implementations, counter 908 maybehave substantially like a timer, decrementing the value it displaysonce every second. In some implementations, information region 910 mayinform the user that the selected setting may be transmitted to theidentified device automatically if no user confirmation or cancellationis received before the value displayed by counter 908 reaches zero.

In some implementations, control circuitry 304 may transmit thegenerated message 700 corresponding to selected setting to theidentified target device over a direct communication link. In someimplementations, devices may communicate directly with each other viacommunication paths, such as those described above in connection withpaths 408, 410, and 412, as well other short-range point-to-pointcommunication paths, such as USB cables, IEEE 1394 cables, wirelesspaths (e.g., Bluetooth, infrared, IEEE 802-11x, etc.), or othershort-range communication via wired or wireless paths. The userequipment devices may also communicate with each other directly throughan indirect path via communications network 414. For example, controlcircuitry 304 may transmit the selected setting to the identified deviceover any of the communications paths discussed above. In someimplementations, control circuitry 304 may transmit the selected settingto the identified device over a wireless network.

In some implementations, control circuitry 304 may transmit the selectedsetting to the identified target device using web services. For example,control circuitry 304 may transmit the selected setting to a web serverwhich subsequently forwards the setting to the identified target device.Similarly, control circuitry 304 may transmit the selected setting toany other intermediary device which in turn forwards the selectedsetting to the identified target device. For example, control circuitry304 may transfer the setting to the identified target device usingcloud-based services. In some implementations, control circuitry 304 maytransmit the selected setting to the identified target device over theInternet. In some implementations, control circuitry 304 may instructthe identified target device to retrieve the selected setting from aserver.

In some implementations, control circuitry 304 may transmit the selectedsetting to all user devices in its neighborhood. In its transmission,control circuitry 304 may include other information such as itscoordinates and the direction of transmission, i.e., registereddirection (as indicated by the user via a gesture). User devices thatreceive the transmission may determine individually whether they arelocated along the direction of transmission. If a user device determinesthat it is located along the direction of transmission, it may save thereceived setting and send a confirmation message to control circuitry304 indicating that it has received the setting. If a user devicedetermines that it is not located along the direction of transmission,it may ignore the received transmission. Such an implementation reducesthe computing burden of control circuitry 304 because each device simplyneeds to make its own determination as to whether it is located alongthe direction indicated by the user. This may be beneficial when manyuser devices are present at a venue.

FIG. 10 shows an illustrative display screen that may notify the user atthe target device of an incoming setting transfer and may prompt theuser to accept the transfer in accordance with an embodiment of theinvention. In some implementations, display screen 1000 may includeinformation region 1002, information region 1004, icon 1006, and icon1008.

In some implementations, when control circuitry 304 of the user's devicetransmits the selected setting to the identified target device, the userof the target device may be given an opportunity to accept or to declinethe transfer using display screen 1000. In some implementations,information region 1002 may include information identifying the user ofthe device from which the transfer originates. In some implementations,information region 1002 may also include information regarding thesetting that is being transferred. For example, information region 1002may display the text “John wants to give you permission to watch PG-13programs.” Information region 1002 may include graphics, text, or anysuitable combination thereof.

In some implementations, information region 1004 may include a suitablecombination of graphics and text and may prompt the user of the targetdevice to accept the setting being transferred. In some implementations,the user of the target device may select icon 1006 to accept thetransfer of the setting. In some implementations, the user of the targetdevice may select icon 1008 to decline the transfer of the setting.Icons 1006 and 1008 may include text, graphics, other visual indicators,or suitable combination thereof.

In some implementations, the user of the target device may have theoption (not shown) to request additional information about the settingbeing transferred. For example, if the setting pertains to access rightsfor the Battlestar Galactica series, the user of the target device maylike to know the duration for which he or she may have access to theseries. Upon request for such additional information, control circuitry304 of the target device may send an appropriate query to the devicefrom which the transfer of the setting originated or to a centralserver. In some implementations, the user of the target device may havean option (not shown) to initiate a text chat or a call with the user ofthe device from which the transfer of the setting originated to obtainfurther details regarding the setting being transferred.

In some implementations, the user of the device from which the transferof the setting originated may be notified whether the user of the targetdevice selected either of icons 1006 or 1008 to accept or decline thetransfer of the setting. In some implementations, if the user of thetarget device chooses to accept the transfer of the setting, the settingmay be applied immediately. For example, if the setting pertains towebsite credentials to watch premium content on Hulu, the user of thetarget device may be able to navigate to Hulu using a web browser andwatch premium content immediately. If the setting is an email, textmessage, calendar event, a reminder, or media content, then thetransferred setting may automatically be opened in a suitableapplication by control circuitry 304 of the target device for immediateconsumption by the user of the target device.

In some implementations, the device from which the setting originatedmay send further instructions to the target device to which the settingwas transferred to apply the transferred setting so that it becomeseffective. In some implementations, the target device to which thesetting was transferred may automatically apply the transferred settingwithout waiting for additional instructions from the device whichtransferred the setting.

In some implementations, the user of the target device to which thesetting was transferred may be able to further transfer the setting toother users. The further transfer of the setting in this manner may becontingent on associated restrictions by the original owner of thesetting. For example, the original owner of the setting may havestipulated that the setting may only be actively applied on a singledevice other than the owner's own device. In this case, the recipient ofthe setting may not be able to transfer the received setting further toa third user.

FIGS. 11( a) and 11(b) show an illustrative method for retracting asetting that was previously transferred to a target device in accordancewith an embodiment of the invention. In some implementations, the userwho transferred the setting may decide that he or she no longer wishesto share the setting and accordingly, the user may retract the settingthat the user previously transferred. FIG. 11( a) shows user equipmentdevice 300 present at a venue with other devices 1110 and 1112. Forexample, device 1110 may belong to user Bob to whom the user, John, hadpreviously transferred a setting.

In some implementations, control circuitry 304 may present the user anoption to retract a setting through a menu. Control circuitry 304 mayreceive a signal indicating user selection of the option to retract asetting. Control circuitry 304 may receive a user input performed via agesture using, for example, a hand, indicative of the device from whichhe or she wants to retract the setting.

In some implementations, control circuitry 304 may detect that user haspressed down on the retract a setting option using a finger and hasperformed a swiping action dragging the setting from the direction ofthe device the user would like to retract that setting from towards hisor her own device. Control circuitry 304 may receive the user input fromuser input interface 312 and may process the received user input todetermine the direction the user is gesturing in. In someimplementations, control circuitry 304 may store the received user inputin storage 308 for future reference. For example, John may haveauthorized his friend, Bob, user of device 1110, to view the entireBattlestar Galactica series on-demand and John may desire to retract theauthorization from Bob. To accomplish this, John may navigate to theretract a setting option, then press down on the option using a fingerand simultaneously drag his finger back from the direction in which Bobis located relative to John. User input interface 312 may register sucha user input and may transmit a signal generated based on the registereduser input to control circuitry 304. Starting from position 1102, Johnmay drag the option 1108 in direction 1106 to position 1104. In theevent that Bob is located to the right of John, direction 1106 may betowards the left of starting position 1102. It will be understood thatdirection 1106 may change accordingly based on the location of Bob'sdevice relative to the location of John's device.

In some implementations, the gesture John performs to retract a settingfrom Bob may be other than swiping a finger across screen 312.Continuing the above example, in some implementations, once John hasselected the option to retract a setting from Bob, John may shake hismobile device in the relative direction in which Bob is located. In someimplementations, John may shake his mobile device back and forth in thedirection of Bob's mobile device several times. Control circuitry 304may receive a selection of the option to retract a setting. Physicalmovement of John's device may be sensed by an accelerometer and agenerated signal corresponding to the movement of John's device may betransmitted to control circuitry 304.

In some implementations, once control circuitry 304 has registered thedirection from which the user wishes to retract the setting, controlcircuitry 304 may proceed to determine the device present in thedirection indicated by the user. In some implementations, controlcircuitry 304 of the user's device may know or may learn the locationsof neighboring devices associated with other users in substantially thesame manner as that described above in the context of FIGS. 8( a) and8(b).

In some implementations, control circuitry 304 may utilize the locationinformation of the user's device and the direction registered based onthe user's gesture to compute a vector matching the registereddirection. The origin of the vector may be the coordinates of the user'sdevice. Control circuitry 304 may make a comparison to check whether anyof its neighboring devices lie on the computed vector. If a single matchis detected, then control circuitry 304 has identified the target devicefrom which the user wishes to retract a setting from. If multiplematches are detected, then control circuitry 304 may display thedetected devices on display 312 and prompt the user to select thedevice(s) from which the user wishes to retract a setting from. The usermay select the intended target device(s) from the list of detecteddevices displayed.

In some implementations, control circuitry 304 may utilize the locationinformation of the user's device and the direction registered based onthe user's gesture to compute a first vector at an angle above theregistered direction. The origin of the first vector may be thecoordinates of the user's device. In some implementations, the value ofthe angle may be substantially similar to the value of the angledescribed above in the context of FIGS. 8( a) and 8(b).

In some implementations, control circuitry 304 may also compute a secondvector at an angle below the registered direction. The origin of thesecond vector may also be the coordinates of the user's device. Thefirst and the second vectors may be used by control circuitry 304 todefine upper and lower boundaries of a circular sector whose origin isthe coordinates of the user's device and whose radius is the range ofthe user's device. Control circuitry 304 may use the circular sectordefined in this manner as the space within which to search for devicesthe user has gestured he or she wishes to retract the setting from. Forexample, the circular sector may define a set of coordinates withinwhich the device the user has gestured he or she wants to retract thesetting from may lie. Accordingly, control circuitry 304 may checkwhether the coordinates (obtained from location information) of any ofits neighboring devices lie in the circular sector. If control circuitry304 determines that the coordinates of a single device lie in thecircular sector, then control circuitry 304 may have successfullyidentified the target device from which the user wishes to retract thesetting from. If multiple matches are detected, then control circuitry304 may display the detected devices on display 312 and prompt the userto select the device which the user wishes to retract the setting from.The user may select the intended target device from the list of detecteddevices displayed.

In some implementations, control circuitry 304 may simply send thedirection registered based on the user's gesture to the central server.In response, the central server may identify the target device which theuser wishes to retract the setting from and send information to controlcircuitry 304 identifying the target device.

In some implementations, after control circuitry 304 has identified thetarget device from which the user wishes to retract a setting, controlcircuitry 304 may show display screen 1100 to the user. In someimplementations, display screen 1100 may include title region 1114 andinformation region 1116. Title region 1114 may include a suitablecombination of text and graphics to indicate to the user that displayscreen 1100 shows the settings previously transmitted to the targetdevice from which the user wishes to retract a setting. In someimplementations, title region 1114 may identify the user of the targetdevice. For example, title region 1114 may indicate that controlcircuitry 304 has identified the target device from which the userwishes to retract a setting to be Bob's device 1110. In this manner,title region 1114 may serve as confirmation that control circuitry hascorrectly identified the device from which the user wishes to retract asetting from. In some implementations, display screen 1100 may show anoption (not shown) to cancel retracting the setting from the targetdevice identified in title region 1114. Control circuitry 304 mayreceive a selection of the option to cancel retracting the setting inthe event that the device identified in title region 1114 is not thedevice the user intended to retract the setting from.

In some implementations, display screen 1100 may include informationregion 1116 which further includes a list of the settings the user haspreviously transferred to the target device identified by controlcircuitry 304 based on the user's gesture. In some implementations,control circuitry 304 may receive a selection of one or more of thesettings displayed in information region 1116. Control circuitry 304 maythen instruct the target device to stop applying the selected settingsand to delete the settings. Once the target device has deleted thesettings the user of the target device may no longer be able to accessthe settings. For example, if the user, John, retracts the settingauthorizing his friend, Bob, to watch the entire Battlestar Galacticaseries, Bob will not be able to access the series further.

FIG. 12 shows an illustrative display screen that may list all settingsthat the user has transferred to other devices in accordance with anembodiment of the invention. In some implementations, display screen1200 may include title region 1202, information region 1204, and icons1206, 1208, and 1210. In some implementations, the user may navigate todisplay screen 1200 by navigating menus. In some implementations,control circuitry 304 may automatically show display screen 1200 when itdetects that another device is close by.

Title region 1202 may indicate that display screen 1200 includes a listof settings that the user has transferred to other users. In someimplementations, information region 1204 may be the list of settingsthat the user has transferred to other users. For example, informationregion 1204 may include any suitable combination of graphics and textand may display a comprehensive list of all the settings the user haspreviously transferred accompanied by the user the setting wastransferred to. In some implementations, icons 1206, 1208, and 1210 mayindicate the user to which a setting was transferred. Icons 1206, 1208,and 1210 may include any suitable combination of text, graphics, orother visual identifiers. For example, icon 1206 may indicate that thesetting authorizing the viewing of PG-13 programs was transferredpreviously to Bob, icon 1208 may indicate that the setting pertaining toJohn's favorite channels was transferred previously to Bob, and icon1210 may indicate that the setting authorizing the viewing of programswith violence was previously transmitted to Alice.

In some implementations, control circuitry 304 may receive a selectionof one or more of the settings shown on display screen 1200 with anindication of retracting the selected settings. In some implementations,display screen 1200 may thus provide an alternative to the methoddiscussed above in the context of FIGS. 11( a) and 11(b) to retractpreviously transferred settings. In some implementations, controlcircuitry 304 may receive a selection of settings shown on displayscreen 1200 that the user wishes to retract. For example, the user maywish to retract the setting previously transferred to Bob whichauthorized Bob to view PG-13 programs.

In some implementations, control circuitry 304 may determine whether thedevice from which the user wishes to retract a setting is within range.If control circuitry 304 determines that the device from which the userwishes to retract a setting is within range, control circuitry 304 maysend a message directly to that device containing instructions to notapply the setting any further and to additionally delete the setting. Ifcontrol circuitry 304 determines that the device from which the userwishes to retract a setting is not within range, then control circuitry304 may notify the user of this fact and may prompt the user to tryagain later. In some implementations, control circuitry 304 may send themessage containing instructions to not apply the setting any further andto additionally delete the setting to a central server instead ofsending the message to the device directly. The central server may thenrelay the message containing the instructions to the device.

In some implementations, the default behavior of control circuitry 304may be to send the message containing instructions to not apply thesetting any further and to additionally delete the setting to thecentral server. Such default behavior may be beneficial in that themessage containing the instructions will be delivered to the device fromwhich the user wishes to retract the setting regardless of whether ornot control circuitry 304 determines that device to be within range.

FIG. 13 shows an illustrative flow diagram for transferring a setting toanother device based on user gestures in accordance with an embodimentof the invention. At step 1302, control circuitry 304 may receive aselection of a setting. The setting may be selected based on displayscreen 600. The setting may alternatively be selected from any othersuitable navigational item on his or her device. For example, the usermay be updating his or favorite channels and may decide to transfer thesetting pertaining to favorite channels to another user.

At step 1304, control circuitry 304 may make a determination as towhether the setting selected by the user in step 1302 is in facttransferable to another user. For example, control circuitry 304 mayreceive a selection of a setting authorizing the recording of anon-demand movie. However, control circuitry 304 may determine that theuser's access rights to the selected on-demand movie are valid for onlya single user and therefore, cannot be transferred to another user. Inresponse to determining that the setting selected by the user istransferable, the process proceeds to step 1308. Otherwise the processproceeds to step 1306 to prompt the user that the selected setting isnot transferable to another user.

At step 1308, control circuitry 304 may receive a user input indicativeof the device to which the user wishes to transmit the selected setting.The user input may be received in any of the forms discussed above inconnection with FIGS. 8( a) and 8(b). For example, the user may pressdown on the selected setting using a finger and perform a swipinggesture in the direction of the device to which the user wishes totransfer the setting. Control circuitry 304 may process the receiveduser input to determine the direction indicated by the user input.Control circuitry 304 may perform the determination of the directionusing standard signal processing techniques.

At step 1310, control circuitry 304 may make a determination as towhether any device is present in the direction indicated by the userinput in step 1308. The determination may be made by control circuitry304 using any of the techniques discussed above in connection with FIGS.8( a) and 8(b). For example, control circuitry 304 may make thedetermination locally by checking whether any of its neighboring devicesare present in a circular sector oriented in the direction indicated bythe user. Alternatively, control circuitry 304 may send the directionindicated by the user input to a central server which may respond with alist of devices present in the direction indicated by the user input. Inresponse to determining that no devices are present in the directionindicated by the user input, the process proceeds to step 1312 wherecontrol circuitry 304 may prompt the user to try inputting the directionagain. The process proceeds back to step 1302 after displaying theprompt to the user. Otherwise the process proceeds to step 1314.

At step 1314, control circuitry 304 may identify the target deviceindicated by the user input received in step 1308. Control circuitry 304may identify the target device using any of the techniques describedabove in connection with FIGS. 8( a) and 8(b). If control circuitry 304identifies multiple devices as the potential target device, controlcircuitry 304 may display the list of the multiple devices to the useron display screen 312 and may prompt the user to select the intendedtarget device. Once a target device has been uniquely identified,control circuitry 304 may show the user display screen 900 prompting theuser to confirm transfer of the setting to the identified target device.Display screen 900 may include a timer that counts down from a startingvalue while control circuitry 304 waits for user confirmation.

At step 1316, control circuitry 304 may make a determination as towhether a user input cancelling the transfer of the setting to theidentified target device has been received before the timer of displayscreen 900 reaches zero. In response to determining that a user inputcancelling the transfer of the setting to the identified target devicehas been received before the timer of display screen 900 reaches zero,the process proceeds to step 1318 where control circuitry 304 returnsthe user to the main menu or to the screen the user was previouslyviewing before the selection of the setting in step 1302. Otherwise, theprocess proceeds to step 1320.

At step 1320, display screen 900 is shown to the user at the identifiedtarget device prompting the user to accept the setting beingtransferred. For example, the user at the identified target device maybe given an opportunity to learn further details about the setting beingtransferred and to subsequently accept or decline the transfer.

At step 1322, control circuitry 304 may make a determination as towhether the user at the identified target device has accepted thetransfer of the setting. In response to determining that the user at theidentified target device has declined the transfer of the setting, theprocess proceeds to step 1324 where control circuitry 304 notifies theuser that the user at the identified target device has declined thetransfer of the setting. Otherwise, the process proceeds to step 1326.

At step 1326, control circuitry 304 transfers the setting to theidentified target device. In some implementations, control circuitry 304may send further instructions to the identified target device to applythe setting so that it becomes active on the identified target device.In some implementations, control circuitry 304 may notify the user thatthe transfer of the setting has been completed successfully.

FIG. 14 shows an illustrative flow diagram for retracting a setting fromanother device based on user gestures in accordance with an embodimentof the invention. At step 1402, control circuitry 304 receives a userinput that indicates, using a direction, a device from which the userwishes to retract a setting. The user input may indicate the directionusing any of the techniques discussed above in connection with FIGS. 11(a) and 11(b). For example, the user may use a finger to swipe on screen312 starting from a position relatively close to the device from whichthe user wishes to retract a setting and ending the swipe at a positionrelatively close to the user's own location. In some implementations,the user may use one or more fingers to perform the swiping gesture.

At step 1404, a determination is made as to whether any device ispresent in the direction indicated by the user input in step 1402. Thedetermination may be made by control circuitry 304 using any of thetechniques discussed above in connection with FIGS. 11( a) and 11(b).For example, control circuitry 304 may make the determination locally bychecking whether any of its neighboring devices are present in acircular sector oriented in the direction indicated by the user.Alternatively, control circuitry 304 may send the direction indicated bythe user input to a central server which may respond with a list ofdevices present in the direction indicated by the user input. Inresponse to determining that no devices are present in the directionindicated by the user input, the process proceeds to step 1406 wherecontrol circuitry 304 may prompt the user to try inputting the directionagain. Otherwise the process proceeds to step 1408.

At step 1408, control circuitry 304 may identify the target deviceindicated by the user input received in step 1402. Control circuitry 304may identify the target device using any of the techniques describedabove in connection with FIGS. 11( a) and 11(b). If control circuitry304 identifies multiple devices as the potential target device, controlcircuitry 304 may display the list of the multiple devices to the useron display screen 312 and may prompt the user to select the intendedtarget device.

At step 1410, a determination is made as to whether the user haspreviously transferred any settings to the device identified in step1408. For example, control circuitry 304 may query an internal databaseto determine whether the user previously transferred any settings to theidentified device. In some implementations, control circuitry 304 mayquery a central server to determine whether the user previouslytransferred any settings to the identified device. In someimplementations, control circuitry 304 may query the identified deviceto determine whether the user previously transferred any settings to theidentified device. In response to determining that the user has notpreviously transferred any settings to the identified device, theprocess proceeds to step 1412 where control circuitry 304 prompts theuser that there are no settings available to retract from the identifieddevice. Otherwise, the process proceeds to step 1414.

At step 1414, control circuitry 304 displays a list of all the settingsavailable for the user to retract from the identified device. The listof settings displayed may be substantially similar to display screen1100 discussed above in connection with FIG. 11( b). Control circuitry304 may receive a selection of one or more of the settings displayed toretract from the identified device.

At step 1416, a determination is made as to whether a user selection ofa setting to retract is received. For example, control circuitry 304 maywait for a pre-determined amount of time to receive the user selectionof a setting. In response to determining that no user selection of asetting has been received in the pre-determined amount of time, theprocess proceeds to step 1418 where control circuitry 304 returns theuser to the main menu or the screen the user was viewing prior to step1402. Otherwise, the process proceeds to step 1420.

At step 1420, control circuitry 304 transmits an instruction to theidentified device to remove the setting selected by the user after step1414. Control circuitry 304 may send the instruction to the identifieddevice using any of the methods discussed above in connection with FIGS.11( a), 11(b), and 12.

At step 1422, a determination is made as to whether the identifieddevice has removed the setting based on the instruction received fromcontrol circuitry 304. For example, control circuitry 304 may receive amessage from the identified device confirming that the setting has beenremoved and deleted. In response to determining that the identifiedtarget device has not successfully removed the setting, the processproceeds to step 1424 where control circuitry 304 displays an errormessage to the user indicating that the identified target device has notremoved the setting. Otherwise, the process proceeds to step 1426.

At step 1426, control circuitry 304 displays a message confirming to theuser that the identified device has removed and deleted the setting.

FIG. 15 shows an illustrative flow diagram for retracting a setting fromanother device based on user gestures in accordance with an embodimentof the invention. At step 1502, control circuitry 304 may display a listof all settings the user has transferred previously to any other user.The manner in which the previously transferred settings are displayedmay be substantially similar to the discussion above in connection withFIG. 12. For example, the settings may be grouped according to the userto whom the setting was transferred, alphabetically, according to thesetting category, or any other suitable grouping.

At step 1504, a determination is made as to whether a user selection ofa setting to retract is received. For example, control circuitry 304 maywait for a pre-determined amount of time to receive the user selectionof a setting. In response to determining that no user selection of asetting has been received in the pre-determined amount of time, theprocess proceeds to step 1506 where control circuitry 304 returns theuser to the main menu or the screen the user was viewing prior to step1502. Otherwise, the process proceeds to step 1508.

At step 1508, control circuitry 304 may identify the device to which thesetting selected by the user prior to step 1504 was previouslytransferred. The device to which the setting was transferred may bedetermined using any of the methods discussed above in connection withFIG. 12. For example, control circuitry 304 may query an internaldatabase which stores all settings that have been transferred to otherdevices or a central server. In some implementations, identifying thedevice to which the selected setting was previously transferred maysimply be determining whether the device is within range of controlcircuitry 304. If the device is not within range of control circuitry304, then control circuitry 304 may not be able to send instructions tothe device directly. However, control circuitry 304 may instead send aninstruction to the device over the Internet via an intermediate centralserver.

At step 1510, a determination is made as to whether control circuitry304 was able to identify the device in step 1508. In response todetermining that control circuitry 304 was unable to identify thedevice, the process proceeds to step 1512 where the user is prompted totry retracting the setting at a later time because the device isunavailable. Otherwise, the process proceeds to step 1514.

At step 1514, control circuitry 304 transmits an instruction to theidentified device to remove the setting selected by the user after step1502. Control circuitry 304 may send the instruction to the identifieddevice using any of the methods discussed above in connection with FIGS.11( a), 11(b), and 12.

At step 1516, a determination is made as to whether the identifieddevice has removed the setting based on the instruction received fromcontrol circuitry 304. For example, control circuitry 304 may receive amessage from the identified device confirming that the setting has beenremoved and deleted. In response to determining that the identifiedtarget device has not successfully removed the setting, the processproceeds to step 1518 where control circuitry 304 displays an errormessage to the user indicating that the identified target device has notremoved the setting. Otherwise, the process proceeds to step 1520.

At step 1520, control circuitry 304 displays a message confirming to theuser that the identified device has removed and deleted the setting.

FIG. 16 shows an illustrative flow diagram for identifying a targetdevice from a plurality of devices in accordance with an embodiment ofthe invention. At step 1602, control circuitry 304 may receive a userinput from user input interface 310 indicative of the device to whichthe user wishes to transmit the selected setting. For example, userinput interface 310 may transmit data identifying the pixels of thetouch screen which registered the pressure exerted by the user'sfinger(s) during the gesture (in the sequence the touch screenregistered the user's finger(s) exerted pressure on the pixels) tocontrol circuitry 304. The user input may be received in any of theforms discussed above in connection with FIGS. 8( a) and 8(b).

At step 1604, control circuitry 304 may process the received user inputto identify the direction indicated by the user in the user input. Forexample, using the received sequence of pixels, control circuitry 304may determine the direction indicated by the user input by using alook-up table. Control circuitry 304 may also determine the directionbased on the position of the pixels in the sequence of pixels relativeto other pixels on the touch screen.

At step 1606, control circuitry 304 may compute a reference vectorparallel to the direction identified at step 1604. The reference vectormay be a vector of coordinates where each entry of the reference vectoris a coordinate that lies along the direction identified at step 1604.The first entry of the reference vector, the origin, may be thecoordinates of the user's device. The coordinate in each subsequententry of the reference vector may be a pre-determined distance away fromthe coordinate at the previous entry of the reference vector. Thecoordinate in the last entry of the reference vector may be at apre-determined distance away from the coordinate in the first entry ofthe reference vector.

At step 1608, control circuitry 304 may compute a first vector where thefirst entry of the first vector (i.e., the origin of the first vector)is identical to the first entry of the reference vector and where thedirection of the first vector is at an angle above the reference vector.The first vector may be computed in the manner discussed above inconnection with FIGS. 8( a) and 8(b).

At step 1610, control circuitry 304 may compute a second vector wherethe first entry of the first vector (i.e., the origin of the secondvector) is identical to the first entry of the reference vector andwhere the direction of the second vector is at an angle below thereference vector. The second vector may be computed in the mannerdiscussed above in connection with FIGS. 8( a) and 8(b). The angle bywhich the direction of the second vector is below the reference vectormay be identical to or different from the angle by which the directionof the first vector is above the reference vector.

At step 1612, control circuitry 304 may determine a circular sector suchthat the first and the second vectors are used to define the upper andlower boundaries of the circular sector whose origin is the coordinatesof the user's device and whose radius is the range of the user's device.The circular sector may define a set of coordinates within which thedevice the user has gestured he or she wants to transmit the selectedsetting to may lie.

At step 1614, control circuitry may determine whether any devicesneighboring the user's device are located within the set of coordinatesdefined by the circular sector determined at step 1612. For example,control circuitry 304 may examine the coordinates of each of itsneighboring devices to determine whether the coordinates of therespective neighboring device are contained in the set of coordinatesdefined by the circular sector determined at step 1610. In response todetermining that the coordinates of none of the devices neighboring theuser's device are contained in the set of coordinates defined by thecircular sector determined at step 1610, the process proceeds to step1616 where the user is prompted to try indicating the direction of thedevice to which the setting is to be transferred again. Otherwise, theprocess proceeds to step 1618.

At step 1618, control circuitry 304 may determine whether more than onedevices neighboring the user's device are located within the set ofcoordinates defined by the circular sector determined at step 1612. Inresponse to determining that only a single neighboring device hascoordinates which are contained in the set of coordinates defined by thecircular sector determined at step 1612, the process proceeds to step1620 where control circuitry 304 shows display screen 900 to the user.Otherwise the process proceeds to step 1622.

At step 1622, control circuitry 304 may display a list of the devicesidentified at step 1614 and may prompt the user to identify and selectone or more of the listed devices. At step 1624, control circuitry 304shows display screen 900 to the user.

FIG. 17 shows an illustrative method for identifying a target devicefrom a plurality of devices in accordance with an embodiment of theinvention. Each of the other users may have a corresponding device. Twoof the user's friends Bob and Alice, each having devices 810 and 812,respectively, may be at the venue with the user. In someimplementations, control circuitry 304 may detect that user has presseddown on a setting shown on display screen 600 using a finger and hasperformed a swiping action dragging the setting in the direction of thedevice the user would like to transfer that setting to—starting fromposition 802, the user may drag setting 808 in direction 806 to position804. Accordingly, based on the user input indicative of direction 806,control circuitry 304 may compute reference vector 1720 where thedirection of reference vector 1720 is parallel to direction 806. Inaddition, as discussed above in connection with FIGS. 8( a) and 8(b),control circuitry 304 may compute first vector 1730 whose direction isat an angle above reference vector 1720 and second vector 1740 whosedirection is at an angle below reference vector 1720. The origin of eachof reference vector 1730, first vector 1730, and second vector 1740 maybe point 1750. In some implementations, point 1750 may be thecoordinates of the user's mobile device. Control circuitry 304 maydetermine the coordinates of the user's mobile device using any of thetechniques discuss above, e.g., using a GPS or triangulation methods.

It should be understood that the above steps of the flow diagrams ofFIGS. 13, 14, 15, and 16 may be executed or performed in any order orsequence not limited to the order and sequence shown and described inthe figures. Also, some of the above steps of the flow diagrams of FIGS.13, 14, 15, and 16 may be executed or performed substantiallysimultaneously where appropriate or in parallel to reduce latency andprocessing times.

The above-described embodiments of the present disclosure are presentedfor purposes of illustration and not of limitation, and the presentdisclosure is limited only by the claims which follow.

What is claimed is:
 1. A method for transferring settings between userdevices, the method comprising: receiving a media guidance applicationsetting, wherein the setting was selected at a first user device;receiving physical contact, with the first user device, indicative of adirection; identifying a target device by determining which of aplurality of user devices within a predetermined range of the first userdevice corresponds to the direction indicated by the physical contact;generating for display a message requesting user confirmation beforetransmitting the selected setting to the target device; transmitting theselected setting to the target device to cause the selected setting tobe applied to the target device, in response to receiving the userconfirmation or automatically when the user confirmation is not receivedwithin a predetermined amount of time.
 2. The method of claim 1, whereinthe physical contact is a first user input, further comprising:receiving a second user input requesting retrieval of the selectedsetting from the target device; identifying the target device at whichthe setting was applied based on the second user input; causing thesetting to be removed from the target device.
 3. The method of claim 2,wherein the second user input is a gesture performed on a touch screenof the first user device, and wherein the gesture is a movement from alocation of the target device towards a location of the first userdevice.
 4. The method of claim 1, wherein the physical contact is agesture performed on a touch screen of the first user device, andwherein the gesture is a movement from a location of the first userdevice towards a location of the target device.
 5. The method of claim4, wherein identifying the target device comprises determining whether alocation of the target device relative to the first device correspondsto a line parallel to the gesture.
 6. The method of claim 1, wherein thesetting comprises media content authorization information for mediacontent that the first device has authority to access and the targetdevice lacks authority to access.
 7. The method of claim 1, whereinselecting the media guidance application setting comprises: displaying alist of settings; and selecting one of the settings in the list.
 8. Themethod of claim 1, wherein identifying the target device furthercomprises: determining the direction indicated by the physical contact;computing a vector of coordinates based on the determined direction; anddetermining which of the plurality of user devices within thepredetermined range of the first user device are located on the computedvector of coordinates.
 9. A system for transferring settings, the systemcomprising a first user device configured to: receive a selection of amedia guidance application setting; receive a physical contactindicative of a direction; identify a target device by determining whichof a plurality of user devices within a predetermined range of the firstuser device corresponds to the direction indicated by the physicalcontact; display a message requesting user confirmation beforetransmitting the selected setting to the target device; and transmit theselected setting to the target device to cause the selected setting tobe applied to the target device, in response to receiving the userconfirmation or automatically when the user confirmation is not receivedwithin a predetermined amount of time.
 10. The system of claim 9,wherein the physical contact is a first user input and the first userdevice is further configured to: receive a second user input requestingretrieval of the selected setting from the target device; identify thetarget device at which the setting was applied based on the second userinput; cause the setting to be removed from the target device.
 11. Thesystem of claim 10, wherein the second user input is a gesture performedon a touch screen of the first user device, and wherein the gesture is amovement from a location of the target device towards a location of thefirst user device.
 12. The system of claim 9, wherein the physicalcontact is a gesture performed on a touch screen of the first userdevice, and wherein the gesture is a movement from a location of thefirst user device towards a location of the target device.
 13. Thesystem of claim 12, wherein the first user device is further configuredto identify the target device by determining whether a location of thetarget device relative to the first device corresponds to a lineparallel to the gesture.
 14. The system of claim 9, wherein the settingcomprises media content authorization information for media content thatthe first device has authority to access and the target device lacksauthority to access.
 15. The system of claim 9, wherein the first userdevice is further configured to: display a list of media guidanceapplication settings; and receive a selection of one of the settings inthe list.
 16. The system of claim 9, wherein to identify the targetdevice the first user device is further configured to: determine thedirection indicated by the physical contact; compute a vector ofcoordinates based on the determined direction; and determine which ofthe plurality of user devices within the predetermined range of thefirst user device are located on the computed vector of coordinates. 17.The method of claim 1, wherein the target device is remote from thefirst user device.
 18. The method of claim 1, wherein the target deviceis not in communication with the first user device prior to transmittingthe selected setting to the target device.